PHP 再帰を使用すると、さまざまな問題に遭遇します。さらに厄介なのは、PHP 再帰が値を返すときに発生する問題です。実際、よく考えてみると、これは非常に単純な質問です。しかし、この単純な質問が私を午後の半分悩ませました。問題は再帰関数の戻り値にあります。
これが私が書き始めたものです:
コードをコピーします コードは次のとおりです:
function test($i)
{
$i -= 4; i <3)
{
return $i;
}
echo test(30)
;実際には内部に何か別のものがあります 問題があります。ここで実行されるテストには戻り値がありません。したがって、$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 の再帰的な戻り値に問題がある場合の具体的な解決策です。
http://www.bkjia.com/PHPjc/326594.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/326594.html
技術記事 PHP の再帰を使用すると、さまざまな問題に遭遇します。さらに厄介なのは、PHP の再帰が値を返すときの問題です。実はこれ、よく考えてみるととても単純な疑問なんです…