是否可以向对象添加匿名函数,并在对象中调用它。请参阅下面的示例代码。 Calling closure assigned to object property directly和Anonymous function for a method of an object描述直接调用它,而不是在对象内。谢谢
class myClass
{
public function go()
{
$this->scope;
}
}
$myObj=new myClass();
$myObj->scope=function()
{
echo('Print This!');
};
$myObj->go();
答案 0 :(得分:2)
$this->scope
需要在myClass:go
内调用/执行。例如: -
<?php
class Example {
protected
$callback;
public function setCallback($callback) {
$this->callback = $callback;
}
public function invoke() {
call_user_func($this->callback);
}
}
$example = new Example;
$example->setCallback(function(){
echo 'Hello World';
});
$example->invoke();
/*
Hello World
*/
安东尼。