遞歸函數(shù)為自調(diào)用函數(shù),在函數(shù)體內(nèi)直接或直接自個(gè)調(diào)用自個(gè),但需求設(shè)置自調(diào)用的條件,若滿(mǎn)意條件,則調(diào)用函數(shù)自身,若不滿(mǎn)意則停止本函數(shù)的自調(diào)用,然后把目前流程的主控權(quán)交回給上一層函數(shù)來(lái)履行,也許這么給我們解說(shuō),仍是很難理解,比如
function test ($n){
echo $n." ";
if($n>0){
test($n-1);
}else{
echo "";
}
echo $n." "
}
test(2)
這個(gè)比如終究的輸出結(jié)果是
2 1 0–>0 1 2
我解說(shuō)下,為何輸出是這么的
第一步,履行test(2),echo 2,然后由于2>0,履行test(1), 后邊還有沒(méi)來(lái)得及履行的echo 2
第二步,履行test(1),echo 1,然后由于1>0,履行test(0),相同后邊還有沒(méi)來(lái)得及履行的 echo 1
第三步,履行test(0),echo 0,履行test(0),echo 0, 此刻0>0的條件不滿(mǎn)意,不在履行test()函數(shù),而是echo “”,并且履行后邊的 echo 0
此刻函數(shù)現(xiàn)已不再調(diào)用自個(gè),開(kāi)端將流程的主控權(quán)交回給上一層函數(shù)來(lái)履行,也即是開(kāi)端履行剛剛一切test()函數(shù)沒(méi)來(lái)得及輸出的最終一個(gè)echo,0的一層是1也即是輸出1 1的上一層是2 也即是輸出2 2沒(méi)有山一層 所以呢 輸出的內(nèi)容即是2 1 0–>0 1 2
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
您可能感興趣的文章:- PHP遞歸的三種常用方式
- php遞歸函數(shù)三種實(shí)現(xiàn)方法及如何實(shí)現(xiàn)數(shù)字累加
- PHP 無(wú)限分類(lèi)三種方式 非函數(shù)的遞歸調(diào)用!
- php菜單/評(píng)論數(shù)據(jù)遞歸分級(jí)算法的實(shí)現(xiàn)方法
- PHP基于遞歸算法解決兔子生兔子問(wèn)題
- PHP基于非遞歸算法實(shí)現(xiàn)先序、中序及后序遍歷二叉樹(shù)操作示例
- PHP基于二分法實(shí)現(xiàn)數(shù)組查找功能示例【循環(huán)與遞歸算法】
- PHP實(shí)現(xiàn)字符串翻轉(zhuǎn)功能的方法【遞歸與循環(huán)算法】
- PHP基于遞歸實(shí)現(xiàn)的約瑟夫環(huán)算法示例
- PHP使用遞歸算法無(wú)限遍歷數(shù)組示例
- php獲得文件夾下所有文件的遞歸算法的簡(jiǎn)單實(shí)例
- PHP二分查找算法示例【遞歸與非遞歸方法】
- PHP冒泡算法詳解(遞歸實(shí)現(xiàn))
- 關(guān)于PHP遞歸算法和應(yīng)用方法介紹
- PHP遞歸算法的詳細(xì)示例分析
- php全排列遞歸算法代碼
- php實(shí)現(xiàn)遞歸的三種基本方式