0
我有一個類,有幾個方法將一個匿名函數作爲參數。這個類看起來是這樣的:在回調匿名函數中訪問類的實例
class MyClass {
public function myMethod($param, $func) {
echo $param;
user_call_func($func);
}
public function sayHello() {
echo "Hello from MyClass";
}
}
我希望能夠做這樣的事情:
$obj = new MyClass;
$obj->myMethod("Hi", function($obj) {
echo "I'm in this anonymous function";
// let's use a method from myClass
$obj->sayHello();
});
所以,在我的匿名函數,因爲我通過$ OBJ作爲參數傳遞給匿名函數,我應該能夠從匿名函數中訪問它的方法。在這種情況下,我們會看到
I'm in this anonymous function
Hello from MyClass
我該如何實現這一目標?
感謝
感謝您的回覆。如果我想讓班級公開可用,並儘可能減少班級以外需要完成的任務,該怎麼辦?我可以在課堂上處理'使用'情況嗎? – mast 2014-09-05 20:26:13
我不知道我真的理解你的評論,你問你是否把這個功能放在一個類中,你也可以在'$ self'對象上調用private/protected方法嗎? – 2014-09-05 20:41:55