Heim  >  Artikel  >  Backend-Entwicklung  >  php如何简化把函数当做参数传递

php如何简化把函数当做参数传递

WBOY
WBOYOriginal
2016-06-06 20:42:451105Durchsuche

有类似这样的两个一个函数:

<code>function fun1(callable $fn){
    return $fn();
}
</code>

其中$fn是传递进去的函数运算,我知道可以这么写:

<code>$num = 5;
$res = fun1(function () use ($num) {
    $count = 10*$num;
    return $count;
});
</code>

网上说使用HHVM可以这么写:

<code>$res = retry(5, () ==> 10*$num);
</code>

我看了下HHVM项目,感觉有些复杂,请问各位有没有简单的方式直接使用php实现这种语法。

回复内容:

有类似这样的两个一个函数:

<code>function fun1(callable $fn){
    return $fn();
}
</code>

其中$fn是传递进去的函数运算,我知道可以这么写:

<code>$num = 5;
$res = fun1(function () use ($num) {
    $count = 10*$num;
    return $count;
});
</code>

网上说使用HHVM可以这么写:

<code>$res = retry(5, () ==> 10*$num);
</code>

我看了下HHVM项目,感觉有些复杂,请问各位有没有简单的方式直接使用php实现这种语法。

php没有这方面的简写语法,你只能老老实实的写function

这么写法一开始很装b,后期就连自己都看不懂了

应该是没有的 除非你自己实现一个词法分析器之类的。。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn