国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php基于閉包實現函數的自調用(遞歸)實例分析

2024-05-04 23:52:08
字體:
來源:轉載
供稿:網友

本文實例講述了php基于閉包實現函數的自調用(遞歸)的方法。分享給大家供大家參考,具體如下:

php的閉包可能不常用,但是在某些場合之下還是可以考慮用php的閉包來實現某些功能的,比如遞歸,這里講一下用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));

這是一個簡單的使用php閉包實現遞歸的函數,其實,假如我們對這個函數稍微修改一下,是可以實現很多功能的,比如說,無限極分類。

關于里面的閉包函數,其實,我們也可以不用引用外面的closure參數,里面的閉包函數的參數,我們可以在closure的內部設置。

我們也可以不用返回閉包函數的值,因為閉包函數是在closure函數里面,我們可以在closure里面設置一下變量傳遞給閉包函數,然后,用閉包遞歸獲取我們想要的東西存儲在數組中,再利用closure函數返回閉包函數獲取的東西,所以,閉包函數也可以沒有返回值的,關鍵是你要獲取什么東西。

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 聊城市| 政和县| 通城县| 集贤县| 罗田县| 博兴县| 河东区| 武宣县| 江阴市| 山阳县| 当涂县| 富源县| 荃湾区| 望都县| 常山县| 淮南市| 建始县| 长泰县| 平安县| 周宁县| 什邡市| 博兴县| 乌兰察布市| 永和县| 萝北县| 普格县| 三明市| 彝良县| 哈尔滨市| 葫芦岛市| 交口县| 咸宁市| 黎平县| 凤城市| 云南省| 修文县| 聂拉木县| 合阳县| 驻马店市| 泰和县| 镇江市|