在 PHP 中是否可以将执行的函数作为函数的参数传递,以便函数的结果将被移交而不是回调函数对象?
无需触及范围功能(没有 eval 或额外的魔法执行)。
比方说,我要给函数的参数不清楚。因此,在赋予该功能之前必须对此做出决定。
目前这总是看起来像这样:
$tmp = ($something == $bla)?42:7;
myFunction($tmp);
对于这么短的决定,它不是那么成问题。但有时有两种以上的可能性。所以需要一个 if-elseif,或者一个 switch-case。
但是像这样放一些东西会更干净:
myFunction(function(){
if(...){ return 42; }
elseif(...){ return 7; }
elseif(...){ return 5; }
elseif(...){ return 12; }
else{ return 1; }
});
因此,无需先将其保存到变量中。
只是为了更简洁的代码,更少$tmp或$trash变量。
HUWWW
海绵宝宝撒