前回の記事では、php再帰関数の使用法とその実装方法を紹介しました。それでは、php再帰関数を使用するときの戻りの問題はどうなるでしょうか?今日は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 再帰関数を実装する 3 つの方法の分析
以上がPHPの再帰関数の戻り値の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。