Ну, если вы действительно настаиваете. Другим обходным решением было бы следующее:
$obj = new ArrayObject(array(),2);
$obj->callback = function() {
print "HelloWorld!";
};
$obj['callback']();
Но это не самый приятный синтаксис.
Однако парсер PHP всегда рассматривает T_OBJECT_OPERATOR
, IDENTIFIER
, (
как вызов метода , Кажется, нет обходного пути для создания ->
обхода таблицы методов и доступа к атрибутам.