ホームページ  >  に質問  >  本文

PHPの条件ループエラー条件

条件が true の場合、「ok」が表示されないのはなぜですか? 条件がトリガーされた場合に「いいえ」と表示される理由がわかりません。

ああああ

P粉536532781P粉536532781380日前461

全員に返信(2)返信します

  • P粉741678385

    P粉7416783852023-09-08 14:19:49

    あなたの else ブロックは何も返さないので、最初の試行で数字の 5 を取得しない限り、else ブロックに移動します。このブロックはそれ自体を呼び出しますが、呼び出しは行いません。実際には最初の呼び出しに任意の値を返します。

    関数が何も返さない場合は、NULL が返されます。

    また、戻り値が最初の呼び出しまでバブルアップされるように、else ブロックに return ステートメントを追加します。

    リーリー

    ところで、これが実際のコードではなく、単なるテストであることを願います。これは、基本的に ok をエコーする非常に複雑な方法にすぎないからです。 echo 'no';

    に到達することはありません。

    返事
    0
  • P粉696605833

    P粉6966058332023-09-08 09:24:01

    再帰呼び出しの場合は、else 条件を get_number(); から return get_number(); に変更してください。

    また、if 条件で return ステートメントを 2 つ使用するのはなぜですか?

    リーリー

    最初のステートメントを保持し、2 番目の return ステートメントを削除できます。

    返事
    0
  • キャンセル返事