首頁  >  文章  >  後端開發  >  php遞迴函數中使用return的注意事項你知道嗎

php遞迴函數中使用return的注意事項你知道嗎

怪我咯
怪我咯原創
2017-07-06 09:49:051285瀏覽

php遞迴函數使用return的時候會碰到無法正確回傳想要的值得情況,以下就來舉例來說明一下吧

# php遞歸函數中使用return的時候會碰到無法正確返回想要的值得情況,如果不明白其中的原因,很難找出錯誤的,就下面的具體例子來說明一下:

# 程式碼如下:

function test($i){ 
$i-=4; 
if($i<3){ 
return $i; 
}else{ 
test($i); 
} 
} 
echotest(30);

這段程式碼看起來沒有問題,如果不運行一下估計你也不會認為他有什麼問題,及時運行起來發現有問題你也不一定知道哪裡有問題,但其實這個函數的else裡面是有問題的。在這段程式碼裡面執行的結果是沒有回傳值的。所以雖然滿足條件 $i<3 時return $i整個函數還是不會回傳值的。因此對上面的PHP遞歸函數可做如下修改(更多PHP教程請訪問程式碼家園):

程式碼如下:

function test($i){ 
$i-=4; 
if($i<3){ 
return $i; 
}else{ 
return test($i);//增加return,让函数返回值 
} 
} 
echotest(30);

以上是php遞迴函數中使用return的注意事項你知道嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn