考虑以下代码,它是将回调函数存储为成员,然后使用它的方案:
class MyClass {
function __construct($callback) {
$this->callback = $callback;
}
function makeCall() {
return $this->callback();
}
}
function myFunc() {
return 'myFunc was here';
}
$o = new MyClass(myFunc);
echo $o->makeCall();
我希望myFunc was here
得到回应,但相反我得到:
Call to undefined method MyClass::callback()
谁能解释这里出了什么问题,以及我可以做些什么来获得所需的行为?
万一这很重要,我使用的是 PHP 5.3.13。