- ベストアンサー
phpで以下のコードが次の認識であっているかどうか
phpで以下のコードが次の認識であっているかどうかおしえてください 1番が正しいコードで2番が私が考えたコードです なぜ2番だとエラーになるんでしょうか? 1番 <?php function say_hello($greeting) { echo $greeting."\n"; }; say_hello("Good morning"); 2番 <?php function say_hello() { echo say_hello()."\n"; }; say_hello("Good morning"); php
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
function say_hello() と引数の定義が無いのに say_hello("Good morning"); と引数を渡しているので構文エラーになります。 say_hello() 関数内で echo say_hello()."\n"; と同じ関数を呼び出して処理結果を出力しようとしていますが、say_hello() 関数には戻り値が無いので何も出力されません。 また、再帰呼び出しを行った場合の終了条件がプログラムされていないので無限ループになってしまい、プログラムが終了しません。
その他の回答 (1)
- Kaneyan-R
- ベストアンサー率42% (1340/3126)
回答No.1
エラーの理由 1.関数に引数がないのに、引数を渡している。 2.関数内で自身を呼び出している。
質問者
お礼
ありがとうございます
お礼
ありがとうございます