Вот еще один способ успешного вызова свойств объекта как закрытия. Если вы не хотите менять основной объект, используйте это:
$obj = new AnyObject(); // with or without __invoke() method
$obj->callback = function() {
return function () {
print "HelloWorld!";
};
};
$obj->callback();
UPDATE:
$obj = new AnyObject(); // with or without __invoke() method
$obj->callback = function() {
print "HelloWorld!";
};
$callback = $obj->callback;
$callback();