【发布时间】:2012-03-25 07:10:19
【问题描述】:
我想做什么
我想检查一个闭包(作为变量传递)以确定它需要多少个参数。本质上,我想重载传统意义上的闭包,只是要区别对待。
function someMethod(Closure $callback) {
$varA;
$varB;
$varC;
if($callback->getNumArgs() == 3) {
$callback($varA, $varB, $varC);
}
else {
$callback($varC, $varA);
}
}
如果可以更好地解释,请告诉我以便编辑。
背景资料
根据闭包的参数数量,我将调整它的调用方式。我需要这样做以通过循环节省昂贵的迭代。
请注意
- 我使用的是 PHP5.3
-
提醒一下,我不想执行该功能,因此无法使用
func_num_args
【问题讨论】:
标签: php closures overloading