我正在尝试做这样的事情:
首先,我创建身份类
class Identity {
private $identity;
public function __construct($identiy) {
$this->identity = $identiy;
}
public function getIdentity($value) {
return $this->identity($value);
}
}
然后我创建该类的一个实例:
$identity = new Identity(function ($value){
return "1";
});
echo $identity->identity(1);
在JavaScript中,我可以执行类似的操作,但是我不知道如何在PHP中执行此操作。任何帮助表示赞赏。
答案 0 :(得分:1)
以下是您需要的what的文档:
$var = function() {
return 'I am a ' . func_get_arg(0);
};
print_r($var('Closure'));
答案 1 :(得分:0)
您有2个问题:
没有identity
方法会导致php错误输出。使用临时变量可以解决该问题。
class Identity {
private $identity;
public function __construct($identiy) {
$this->identity = $identiy;
}
public function getIdentity($value) {
// Use a temporary variable for your function
$func = $this->identity;
return $func($value);
}
}
$identity = new Identity(function ($value){
return "1";
});
// Access the getter instead of the property
echo $identity->getIdentity(1);