PHP
#bitrix#php#local#php_interface#architecture#init

Bitrix /local: init.php — только подключение файлов

Минимальный init.php по рекомендациям Bitrix: подключает constants.php, autoload.php и events.php. Вся логика вынесена в отдельные файлы и классы.

Как использовать

  1. Разместите файл в /local/php_interface/init.php. Система подключает его на каждом запросе автоматически.
  2. Создайте в той же папке constants.php, autoload.php и events.php — init.php только подключает их.
  3. Не добавляйте в init.php бизнес-логику, хелперы и AddEventHandler — только require_once.

Единая точка входа в пользовательский PHP — /local/php_interface/init.php. По документации Bitrix и рекомендациям сообщества в нём оставляют только подключение отдельных файлов. Вся логика — в классах и файлах constants.php, autoload.php, events.php.

<?php
// /local/php_interface/init.php

require_once __DIR__ . '/constants.php';
require_once __DIR__ . '/autoload.php';
require_once __DIR__ . '/events.php';

Замечания

  • __DIR__ — путь к каталогу текущего файла (PHP 5.3+), не зависит от DOCUMENT_ROOT и безопасен при вызове из разных контекстов.
  • Порядок: сначала константы, затем автозагрузка классов, затем регистрация событий (обработчики уже могут быть загружены через autoload).
  • Файлы constants.php, autoload.php, events.php должны существовать в /local/php_interface/; при их отсутствии сайт выдаст фатальную ошибку — создайте их по шаблонам из связанных сниппетов.