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

WBOY
풀어 주다: 2016-06-06 20:42:45
원래의
1111명이 탐색했습니다.

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

<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,后期就连自己都看不懂了

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

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿