Документация для разработчиков

AddEventHandler

AddEventHandler(
 string from_module_id,
 string MESSAGE_ID,
 mixed callback,
 int sort = 100,
 mixed full_path = false
);

Регистрирует произвольный обработчик callback события MESSAGE_ID модуля from_module_id. Если указан полный путь к файлу с обработчиком full_path, то он будет автоматически подключен перед вызовом обработчика. Вызывается на каждом хите и работает до момента окончания работы скрипта.

Аналоги функции в новом ядре D7: Bitrix\Main\EventManager::addEventHandler (новый формат) и Bitrix\Main\EventManager::addEventHandlerCompatible.

Параметры функции

ПараметрОписание
from_module_id Идентификатор модуля который будет инициировать событие.
MESSAGE_ID Идентификатор события.
callback Название функции обработчика. Если это метод класса, то массив вида Array(класс(объект), название метода).
sort Очередность (порядок), в котором выполняется данный обработчик (обработчиков данного события может быть больше одного).
Необязательный параметр, по умолчанию равен 100.
full_path Полный путь к файлу для подключения при возникновении события перед вызовом callback.

Примечание

Все зарегистрированные обработчики хранятся в глобальной переменной $MAIN_MODULE_EVENTS.

См. также

Примеры использования

<?
// скрипт в файле /bitrix/php_interface/init.php
AddEventHandler("main", "OnBeforeUserLogin", Array("MyClass", "BeforeLogin"));
class MyClass { function BeforeLogin(&$arFields) { if(strtolower($arFields["LOGIN"])=="guest") { global $APPLICATION; $APPLICATION->throwException("Пользователь с именем входа Guest не может быть авторизован."); return false; } } } ?>


© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх