23 lines
1.6 KiB
Markdown
23 lines
1.6 KiB
Markdown
|
# Порядок выполнения
|
|||
|
|
|||
|
Каждое приложение выполняется в следующем порядке:
|
|||
|
|
|||
|
1. Старт приложения из `index.php`
|
|||
|
2. Подключение `APPPATH/bootstrap.php`
|
|||
|
3. Начальный загрузчик (bootstrap) вызывает [Kohana::modules] с перечнем подключаемых модулей
|
|||
|
1. Генерируется массив путей (include paths) каскадной файловой системы
|
|||
|
2. У каждого модуля проверяется наличие файла init.php и, при наличии, производится его загрузка
|
|||
|
* Каждый init.php может определять набор используемых маршрутов. Они загружаются при подключении файла init.php
|
|||
|
4. Вызывается [Request::instance] для обработки запроса
|
|||
|
1. Перебираются маршруты, пока не найдётся подходящий
|
|||
|
2. Создается контроллер с передачей в него запроса
|
|||
|
3. Вызывается метод [Controller::before]
|
|||
|
4. Вызывается метод (action) контроллера
|
|||
|
5. Вызывается метод [Controller::after]
|
|||
|
5. Отображение результата работы объекта ([Request])
|
|||
|
|
|||
|
На основе параметров запроса вызываемый метод (action) контроллера может быть изменён в [Controller::before].
|
|||
|
|
|||
|
[!!] Заглушка
|
|||
|
|