php递归返回值只有第一次的结果,php递归函数出现返回值问题的解决
生活随笔
收集整理的這篇文章主要介紹了
php递归返回值只有第一次的结果,php递归函数出现返回值问题的解决
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們在前文章中給大家介紹了關于php遞歸函數的使用,以及實現方式,那么在我們使用php遞歸函數中return的問題呢?今天就給大家解析下php遞歸函數中出現返回值的問題!
在遞歸函數中返回值問題/* 循環去除字符串左邊的0 */
function removeLeftZero($str){
if($str['0'] == '0'){
$str = substr($str, '1');
removeLeftZero($str);
}else{
return $str;
}
}
在大多數人看來這段代碼沒有問題,如果不是運行一下也不知道問題出在哪?這樣運行以后如果是遞歸是不會有返回值的,遞歸后即使滿足else條件也不會有返回值,應該改為/* 循環去除字符串左邊的0 */
function removeLeftZero($str){
if($str['0'] == '0'){
$str = substr($str, '1');
return removeLeftZero($str); // 給函數增加返回值
}else{
return $str;
}
}
總結:
相信通過此文大家對php遞歸函數中出現的返回值問題有了一個新的認識,也知道去如何去解決了,希望對你有所幫助!
相關推薦 :
總結
以上是生活随笔為你收集整理的php递归返回值只有第一次的结果,php递归函数出现返回值问题的解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小凡模拟器
- 下一篇: php采集规则,dedecms采集规则怎