php 在 匿名函數中 調用自身。。


//php閉包實現函數的自調用,也就是實現遞歸
function closure($n,$counter,$max){
    //匿名函數,這里函數的參數加&符號是,引址調用參數自己
    $fn = function (&$n,&$counter,&$max=1) use(&$fn){//use參數傳遞的是函數閉包函數自身
        $n++;
        if($n < $max){//遞歸點,也就是遞歸的條件
            $counter .=$n.'<br />';
            //遞歸調用自己
            $fn($n,$counter,$max);
        }
        return $counter;
    };//記得這里必須加``;``分號,不加分號php會報錯,閉包函數
    /*
    *這里函數closure的返回值就是調用閉包的匿名函數
    *而閉包函數,引用closure函數傳進來的參數
    */
    return $fn($n,$counter,$max);
    
}
echo (closure(0,'',10));

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM