我知道 Reflections 类很有力量,但有时我们只需要存储一个匿名函数,或者在某个地方创建一个简单的回调。
所以,这就是 Callback 类
<?php
class Callback{
private $name = false;
public function Callback($obj,$call=false){
$name = array($obj);
if($call) $name[] = $call;
$this->name = $name;
}
public function invoke($params=array()){
return call_user_func_array($this->name,$params);
}
}
?>
用法
<?php
function sayName(){
return "goku";
}
$myVar = new Callback("sayName");
echo "Hi, I am ".$myVar->invoke()."!";
//也适用于方法:new Callback($obj,"method");
?>