Ⅰ php中的函數遞歸問題
你注意你用了2個echo $num."<br/>";
當$num > 0的時候,每次進這個函數會先執行echo $num."<br/>";
然後進入新函數
當$num = 0的時候,會執行else中的echo "----------------------------------<br />";
但是你注意:最後一個echo $num."<br/>";是獨立於if...else語句之外的,也就是說
從$num = 0的時候開始,不用進入新的函數了,但是echo $num."<br/>";會執行,
於是列印出0.
這個時候一個函數完成,返回上個調用的函數,即$num = 1的時候。以此類推,最後回到你調用
demo6(10);的時候
也就是說之所以你會看到你說的「遞增」情況,是因為你最後一句echo $num."<br/>";
如果你去掉這句那就不會有了。