我們在使用這是開始寫的:
這段代碼看起來沒有問題,其實有else裡面是有問題的。在這裡執行的test沒有返回值。所以雖然滿足條件$i < 3時 return $i整個函數還是不會返回值的。對上面的PHP遞歸返回值函數做如下修改:
- < ?php
- function test($i)
- {
- $i -= 4;
- if($i < 3)
- {
- return $i;
- }
- else
- {
- return test($i); //增加return, 讓函數返回值
- }
- }
- echo test(30);
- ?>
以上代碼示例就是PHP遞歸返回值出現問題時的具體解決方法。