0

我在 PHP 5.4 中遇到了关闭问题

我有数组

public function check(){
return ['int'=>['filter'=>2],
'min'=>function($val){
return ['int'=>2,'min'=>$val];
}
]
}

当我使用

(new Obj())->check()['int'];

有用。但我不知道如何将 min 与参数一起使用,例如 3

我试过了

(new Obj())->check()['min'](3);
(new Obj())->check()['min'(3)];
(new Obj())->check()['min(3)'];

不工作。

4

1 回答 1

3

PHP 的解析器根本无法胜任这项任务,因此您无法像使用其他语言那样编写此表达式。您将不得不使用一种解决方法,例如:

call_user_func((new Obj())->check()['min'], 3));

或者:

$f = (new Obj())->check()['min'];
$f(3);
于 2013-07-15T09:18:37.180 回答