在JavaScript中,您可以定义立即执行的匿名函数:
(function () { /* do something */ })()
你能在PHP中做这样的事情吗?
发布于 2010-08-26 01:35:24
对于PHP7之前的版本,我能想到的立即执行它们的唯一方法是
call_user_func(function() { echo 'executed'; });
使用当前版本的PHP,您只需执行以下操作
(function() { echo 'executed'; })();
发布于 2015-09-16 23:32:02
是在PHP 7
中做同样的事情。
$gen = (function() {
yield 1;
yield 2;
return 3;
})();
foreach ($gen as $val) {
echo $val, PHP_EOL;
}
echo $gen->getReturn(), PHP_EOL;
输出为:
1
2
3
发布于 2013-07-13 00:00:09
当然,您可以使用call_user_func
,但还有另一个非常简单的替代方案:
<?php
// we simply need to write a simple function called run:
function run($f){
$f();
}
// and then we can use it like this:
run(function(){
echo "do something";
});
?>
https://stackoverflow.com/questions/3568410
复制相似问题