Trigub_Ilia

Создание события D7

Oct 3rd, 2019
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.25 KB | None | 0 0
  1. D7 — создание события и обработчика
  2. Создание события
  3. use Bitrix\Main\Event;
  4.  
  5. // Создание события
  6. $event = new Event("mymodule", "OnCatalogElementsImport", array('test_string'));
  7. // Вызов события
  8. $event->send();
  9.  
  10. // Обработка результатов вызова
  11. if ($event->getResults()){
  12.     echo 'Параметры, возвращенные из обработчика';
  13.  
  14.     /** @var \Bitrix\Main\EventResult $eventResult */
  15.     foreach ($event->getResults() as $eventResult)
  16.     {
  17.         echo "<pre style=\"display:block;\">"; print_r($eventResult->getParameters()); echo "</pre>";
  18.     }
  19. }
  20. Обработчик события
  21. \Bitrix\Main\EventManager::getInstance()->addEventHandler(
  22.     'mymodule',
  23.     'OnCatalogElementsImport',
  24.     'myHandler'
  25. );
  26.  
  27. function myHandler(Bitrix\Main\Event $event){
  28.     echo 'Параметры, переданные в обработчик';
  29.     echo "<pre style=\"display:block;\">"; print_r($event->getParameters()); echo "</pre>";
  30.  
  31.     // Возвращаем в событие результат обработки
  32.     $result = new Bitrix\Main\EventResult($event->getEventType(), array(111, 222));
  33.     return $result;
  34. }
Add Comment
Please, Sign In to add comment