for文とforeach文との違いと使う場面の判断基準について記載する。
【for文について】
繰り返し処理を行うために使用する。
カウンタを用意して、初期値と限度数を設定し、限度数まで繰り返し処理を行う。
・得意な場面
for文は「繰り返し回数が定まっているとき」が得意
例えばデータベースから取得する項目が「col_1」~「col_10」まであるような場合や、ランダム数値を10個出す処理(ランダム文字列パスワード生成など)、空の配列を先に宣言しておきたいときに使われます。
・苦手な場面
回数が一定に決まらない処理が苦手。$data配列の数が10個なのか、20個なのかわからない時には向いていない。
【foreach文について】
配列で繰り返し処理を使用する場合に使う
for文のようにカウンタの初期値や繰り返しを続けるための条件、カウンタの増え方(減り方)を設定する必要はなく、指定した配列の要素の数だけ繰り返しを行う。
・得意な場面
foreach文は連想配列の処理が得意
・苦手な場面
指定回数を繰り返す必要があるときや、空の配列を指定数作りたいとき、そもそものデータが配列ではないときは使えない。
また、処理を開始するときに分解したいデータが配列でない場合はNoticeが発生する。
【まとめ】
・シンプルな処理を行う場合はfor文を使う
・配列や連想配列を使用するときはforeach文を使う。
【参考サイト】