• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPの参考書で分からないとこがあります)

PHPの参考書で分からないとこがあります

このQ&Aのポイント
  • PHPによるWebアプリケーションスーパーサンプル第2版のP.99のサンプルファイルについて質問です。
  • 特にfor文の箇所について詳しく教えてください。
  • 初心者の質問ですが、理解できない部分があります。

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

  • ベストアンサー
  • R_Earl
  • ベストアンサー率55% (473/849)
回答No.3

ANo.1ですが訂正です。 「参考書のプログラムと、参考書のプログラムからその2行を消したプログラムの2つを用意して、」 と書きましたが、消すのは次の3行です。 if ($i < count($array) - 1) { $where .= " AND "; } 失礼しました。 それから、もしif文の条件判定が何で必要なのかが分からないのであれば、 元のプログラムの for ($i = 0; $i < count($array); $i++) { $where .= "(ProductName LIKE '%$array[$i]%')"; if ($i < count($array) - 1) { $where .= " AND "; } } の部分を for ($i = 0; $i < count($array); $i++) { $where .= "(ProductName LIKE '%$array[$i]%')"; $where .= " AND "; } に書き換えた(if文による条件判定を無くした)プログラムを用意して実行し、 元のプログラムと挙動を比較してみて下さい。

sryou1985kun
質問者

お礼

わざわざ2回も回答してくださってありがとうございます。とても参考になりました。

その他の回答 (2)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

リファレンスマニュアルや参考書で「文字列演算子」「代入演算子」という項目を読んでください。 http://www.php.net/manual/ja/language.operators.string.php

sryou1985kun
質問者

お礼

教えてくださったサイトを見させていただきました。どうもありがとうございました。

  • R_Earl
  • ベストアンサー率55% (473/849)
回答No.1

ドットは文字列の連結の記号ですよね。 変数$varの値を1加算する時、 $var = $var + 1; と書きますが、これは $var += 1; と略記できる事はご存知ですか? これと同じで、 $where .= " AND "; は $where = $where."AND"; の略記表現です。 $whereに、「$whereと"AND"を連結した文字列」を格納するんです。 > また、 > if ($i < count($array) - 1) { > $where .= " AND "; > が行っている処理を教えて下さい。 参考書のプログラムと、参考書のプログラムからその2行を消したプログラムの2つを用意して、 両方実行させてみて下さい。 両者の挙動を見比べれば、何をしているのかが分かると思います。

関連するQ&A

専門家に質問してみよう