• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPに詳しい方、教えてください)

PHPスクリプトの if 文の解釈

このQ&Aのポイント
  • PHPスクリプトの if 文「 if ○○○ : 」は、条件式が true の場合に処理を実行する制御文です。
  • 具体的には、このスクリプトでは、$_POSTが空でない場合に処理が行われます。
  • その中で、$_POST['name']が空でない場合には、$error['name']に'blank'という文字列を格納します。また、$error['name']が空でない場合には、'ニックネームを入力してください'というエラーメッセージを表示します。

質問者が選んだベストアンサー

  • ベストアンサー
  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.1

> <?php if (isset($error['name']) ? $error['name'] :''): ?> とりあえず、三項演算子の説明。 $a = ($hoge == 1) ? "ok" : "ng"; ↑これは $hogeが[1]の時 [ok]を返し、$hogeが[それ以外]の時 [ng]という文字列を返します。 要は 括弧内が true であれば、ハテナ「?」の後のものを返し、false の時には コロン「:」の後のものを返すってことです。 これを三項演算子と言います。 んで、「if (): ~ endif」。 これは、あまり見ない書き方な気もしますが「if () { ~ }」 と同じです。 $error['name']に何か入っている場合は、その中身が返るので、if は true となり、「* ニックネームを入力してください」が表示されます。 少し書き方を変えると ↓こうなります。 <?php $hoge = isset($error['name']) ? $error['name'] :''; if ($hoge) { print '<p class="error">* ニックネームを入力してください</p>'; } ?> 蛇足ですが、毎回 同じタイトルで質問するのも どうかと思いますがー。

dartymac
質問者

お礼

よくわかりました。ありがとうございました。 >蛇足ですが、毎回 同じタイトルで質問するのも どうかと思いますがー。 プログラム初心者であり、タイトルで内容を表現することができなかったので、そうしていました。次回から気を付けます。

関連するQ&A