Skip to main content

Routing

Подробное описание модернизации функционала маршрутизации Битрикс. Переход от нативного способа, к работе через функционал атрибутов php.

Атрибуты PHP: https://www.php.net/manual/ru/language.attributes.overview.php

Роутинг в Битрикс: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=013764&LESSON_PATH=3913.3516.5062.13764

Контроллеры в Битрикс: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=03750&LESSON_PATH=3913.3516.5062.3750

Life Cycle

Жизненный цикл скрипта обработчика маршрутов.

Инициализируется ядро системы

require_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/start.php';

\Bitrix\Main\Application::getDocumentRoot() -- Класса приложение не существует до момента инициализации ядра, по этой причине нет возможности использовать нативные методы ядра Битрикс. Получение значении дерективы корня сервера исполняемый директории выполняется через нативный php $_SERVER['DOCUMENT_ROOT']

Инициализируется HTTP приложение Битрикс
$application = \Bitrix\Main\Application::getInstance();
$application->initializeExtendedKernel([
    'get' => $_GET,
    'post' => $_POST,
    'files' => $_FILES,
    'cookie' => $_COOKIE,
    'server' => $_SERVER,
    'env' => $_ENV
]);