1.遞歸:程序調用自身的編程技巧稱為遞歸
2.案例:
/** * @param 遞歸 $[name] */ function deeploop(&$i=1){ echo $i; $i++; if($i < 10){ deeploop($i); } } deeploop(); 結果:123456789
3.global
/** * @param 遞歸 $[name] */ $i = 1; function deeploop(){ global $i; //Global的作用是定義全局變量,但是這個全局變量不是應用於整個網站,而是應用於當前頁面,包括include或require的所有文件。 echo $i; $i++; if($i < 10){ deeploop($i); } } deeploop();
4.static
/** * @param 遞歸 $[name] */ function deeploop(){ static $i; echo $i; $i++; if($i < 10){ deeploop($i); } } deeploop();
5.說白了遞歸就是一個循環,用循環實現和遞歸實現是同樣的效果。
/** * @param 遞歸 $[name] */ for($i=1;$i<10;$i++){ echo $i; } function deeploop(){ static $i; echo $i; $i++; if($i < 10){ deeploop($i); } } deeploop();
結果:
1233456789
123456789