我想使用覆盖函数中所有$a
对象的属性访问$a
对象方法myMethod()。我该怎么做?非常感谢您的帮助。
$a = new A('property');
$a->testFunc = Closure::bind(function() {
// here the object scope was gone...
$a->myMethod();
$this->var = "overridden";
}, $a);
答案 0 :(得分:0)
在定义函数时可以使用use
关键字:
$a = new A('property');
$a->testFunc = Closure::bind(function() use ($a) {
// here the object scope was gone...
$a->myMethod();
$this->var = "overridden";
}, $a);
这将告诉php将$a
包含在函数范围内。