В этом руководстве вы изучите следующие темы.
- Маршрутизация - маршрутизация отвечает за ответы на запросы URL. Маршрутизация сопоставляет URL-адрес с заранее определенными маршрутами. Если совпадение маршрута не найдено, CodeIgniter выдает исключение для страницы, не найденной.
- Контроллеры - маршруты связаны с контроллерами. Контроллеры склеивают модели и виды вместе. Запрос данных / бизнес-логики из модели и возврат результатов в представлении представления. Как только URL-адрес сопоставлен с маршрутом, он пересылается в публичную функцию контроллера. Эта функция взаимодействует с источником данных, бизнес-логикой и возвращает представление, в котором отображаются результаты.
- Просмотры - представления отвечают за представление. Представление обычно представляет собой комбинацию HTML, CSS и JavaScript. Эта часть отвечает за отображение веб-страницы пользователю. Как правило, отображаемые данные обычно берутся из базы данных или любых других доступных источников данных.
В этом руководстве вы узнаете:
- Как создать новый проект CodeIgniter
- CodeIgniter Маршрутизация
- Создать маршрут
- Создать Контроллер
- Создать представление
Как создать новый проект CodeIgniter
Мы будем использовать Composer для создания нового проекта. Я буду использовать встроенный сервер PHP, поэтому нет необходимости в дополнительном программном обеспечении, таком как Apache. В этом руководстве мы используем операционную систему Windows. Поэтому мы создали папку Sites на диске C. Вы можете использовать любой каталог, который вам подходит.
Откройте командную строку / терминал и выполните следующую команду
cd C:\Sites
Теперь мы создадим проект CodeIgniter с помощью Composer. Выполните следующую команду
composer create-project CodeIgniter/framework ci-app
ЗДЕСЬ,
- Приведенная выше команда создает новый проект CodeIgniter версии 3 с использованием последней стабильной версии, то есть 3.1.9, в каталоге ci-app.
После завершения выполнения указанной выше команды вы сможете получить в терминале результаты, аналогичные приведенным ниже.
Выполните следующую команду, чтобы перейти к вновь созданному каталогу проекта ci-app
cd ci-app
Теперь запустим встроенный веб-сервер PHP.
php -S localhost:3000
ЗДЕСЬ,
- Приведенная выше команда запускает встроенный PHP-сервер, работающий на порту 3000.
Откройте веб-браузер и перейдите по следующему URL-адресу
http: // локальный: 3000 /
Вы получите следующую страницу
Если вы видите страницу выше, поздравляю, вы успешно установили CodeIgniter.
Как вы можете прочитать на указанной выше веб-странице, отображаемая выше страница отображается представлением, расположенным в application / views / welcome_message.php, а ответственный контроллер находится в application / controllers / Welcome.php
CodeIgniter Маршрутизация
На данный момент у нашего приложения есть только один URL-адрес, который является домашней страницей. В этом разделе мы настроим домашний раздел. Мы создадим несколько новых URL-адресов, которые будут отвечать на различные запросы.
Начнем с маршрута к домашней странице
Откройте файл маршрутов по указанному ниже пути.
application/config/routes.phpВы должны увидеть следующий контент
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;
ЗДЕСЬ,
- $ route ['default_controller'] = 'добро пожаловать'; определяет контроллер по умолчанию, который отвечает на запросы URI
- $ route ['404_override'] = ''; этот маршрут позволяет определить собственный маршрут для ошибок 404. Ошибка 404 возникает, когда страница не найдена. CodeIgniter имеет обработчик ошибки по умолчанию, но вы можете определить свой собственный, если хотите.
- $ route ['translate_uri_dashes'] = ЛОЖЬ; эта опция позволяет переводить тире в подчеркивание. Мы поговорим об этой опции, когда посмотрим, как работают маршруты в CodeIgniter.
Давайте теперь посмотрим на метод контроллера, отвечающий за отображение домашней страницы, которую мы видели, когда открывали URL-адрес http: // localhost: 3000 / в веб-браузере.
Откройте следующий файл
application/controllers/Welcome.php
Вы должны увидеть следующий код
load->view('welcome_message');}}
ЗДЕСЬ,
- Определено ('BASEPATH') ИЛИ exit ('Прямой доступ к сценариям не разрешен'); защищает от прямого доступа к классу контроллера без прохождения файла index.php. Помните, что в парадигме MVC все запросы имеют одну точку входа, а для CodeIgniter - его index.php. Этот код блокирует все запросы, которые не проходят через index.php.
- class Welcome расширяет CI_Controller {…} определяет класс Welcome, который расширяет родительский класс CI_Controller
- public function index () определяет общедоступную функцию, которая вызывается по умолчанию при открытии домашней страницы
- $ this-> load-> view ('welcome_message'); эта строка загружает представление welcome_message. Файл welcome_message находится в каталоге application / views / welcome_message.php.
Пока мы изучили только то, что выходит из коробки с CodeIgniter, давайте теперь попробуем внести некоторые изменения. Мы создадим нашу домашнюю страницу и заменим страницу по умолчанию
Создайте новый файл в application / views / home.php
Добавьте следующий код в home.php
Hello CodeIgniter! CodeIgniter Hello World
ЗДЕСЬ,
Приведенный выше HTML-код загружает структуру Burma SSS, а шрифт из сети CDN создает очень простой HTML-документ. Он применяет очень простое правило CSS из структуры Burma CSS.
Откройте следующий URL-адрес в своем браузере
http: // локальный: 3000 /
Вы должны увидеть следующее
Отлично, мы только что успешно изменили домашнюю страницу. Идем дальше, определимся с нашим маршрутом. Предположим, наше приложение также должно отображать страницу о нас.
Создать маршрут
Откройте файл маршрутов application / config.routes.php
Добавьте следующий маршрут
$route['about-us'] = 'welcome/about_us';
ЗДЕСЬ,
- Когда посетитель посещает URL-адрес / about-us, мы инструктируем CodeIgniter найти контроллер Welcome и выполнить метод about_us.
Создать Контроллер
Давайте теперь определим метод контроллера о нас
Откройте приложение / контроллеры / Welcome.php
Добавьте следующий метод
public function about_us(){$this->load->view('about_us');}
ЗДЕСЬ,
- Приведенный выше код определяет функцию about_us и загружает представление about_us.
Создать представление
Теперь давайте создадим представление, на которое мы только что ссылались в предыдущем разделе.
Создайте новый файл about_us.php в application / views / about_us.php
Добавьте следующий код
About CodeIgniter! About us yap…
Мы готовы, откройте следующий URL-адрес в своем веб-браузере
http: // локальный: 3000 / index.php / о нас
Вы увидите следующую страницу
Если вы видите страницу выше, поздравляю, вы успешно создали простое приложение в CodeIgniter.
Резюме
В этом руководстве мы рассмотрели три (3) основных компонента, из которых состоит приложение CodeIgniter. Мы рассмотрели маршруты и способы их определения, контроллеры и способы создания методов, отвечающих на запросы маршрутов, и создали простые представления, которые возвращаются пользователям, когда они запрашивают ресурс.