Я понимаю, что решили почистить партнерские модули, но ведь у людей бизнес а не игрушки...
Ошибку [TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method [...] cannot be called statically (0) битриксы могли бы элементарно исключить, сделав условие в методе ExecuteModuleEventEx (/bitrix/modules/main/classes/general/module.php строка 480)
вместо
написав
Ошибку [TypeError] call_user_func_array(): Argument #1 ($callback) must be a valid callback, non-static method [...] cannot be called statically (0) битриксы могли бы элементарно исключить, сделав условие в методе ExecuteModuleEventEx (/bitrix/modules/main/classes/general/module.php строка 480)
вместо
| Код |
|---|
return call_user_func_array(array($arEvent["TO_CLASS"], $arEvent["TO_METHOD"]), $args); |
написав
| Код |
|---|
$methodChecker = new \ReflectionMethod($arEvent["TO_CLASS"], $arEvent["TO_METHOD"]);
if($methodChecker->isStatic()) {
return call_user_func_array(array($arEvent["TO_CLASS"], $arEvent["TO_METHOD"]), $args);
} else {
$class = $arEvent["TO_CLASS"];
return call_user_func_array(array(new $class(), $arEvent["TO_METHOD"]), $args);
} |