Добрый день,
для модуля, которым пользуются пользователи из marketplace (1С-Битрикс) необходимо добавить возможность изменять в случае необходимости результаты работы методов класса.
Для реализации callback воспользовался функцией call_user_func. Возможно в 1С-Битрикс уже есть свое Event'ы, которые можно зарегистрировать и присвоить к своему модулю?
На данный момент код имеет следующую структуру:
class myClass {
public function import()
{
$arResult = array();
$arData = array(
'result1',
'result2',
'result3',
);
foreach($arData AS $v)
{
$arResult[] = 'Строка: '.$v;
}
if(function_exists('call_import'))
$arResult = call_user_func('call_import', $arResult);
return $arResult;
}
}
function call_import($arData = array())
{
$arResult = array();
foreach($arData AS $v)
{
$arResult[] = $v.' что то изменили';
}
return $arResult;
}
данный способ позволит пользователю создать свою функцию call_import и изменить результат работы метода import.
На сколько данное решение верно?
Спасибо.