php 7 中的递归 IIFE(立即调用函数)

php 7 是否可以使用带有立即调用函数的递归?

例如,如果我想编写斐波那契数列的递归版本?


以下示例不起作用,但我希望它能帮助您理解我的想法。


echo (function fn($x) {

     if($x==1||$x==0?0){

        return $x;

     }else{

        return fn($x-1) + fn($x+1);

     }

})(4);


心有法竹
浏览 113回答 1
1回答

手掌心

是的,你可以在 php 7 中使用 iife,如下所示:(function() { echo "yes, this works in PHP 7.\n"; })();或者$arr = array();($recursive = function (&$argument){&nbsp; &nbsp; global $recursive;&nbsp; &nbsp; if (count($argument) < 10)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; $argument[] = 'foo';&nbsp; &nbsp; &nbsp; &nbsp; $recursive($argument);&nbsp; &nbsp; }})($arr);print_r($arr);
打开App,查看更多内容
随时随地看视频慕课网APP