- 公開日:2017-2-26 最終更新日:2017-2-20
- プロスタTOP / プログラミング初心者向け技術系ノウハウ・まとめ

プログラムを作成していると同じ処理を何度も繰り返したい時があります。
プログラミング用語では、この同じ処理を何度も繰り返すことを「ループ(loop)」と呼びます。PHP でループ処理を行う構文はいくつかありますが、決まった回数分ループする構文が for 文です。
for文の書き方
1 2 3 4 |
for (初期化式; 条件式; 後処理式) { 何かを実行する文 1行目; 何かを実行する文 2行目; } |
書き方は上記のようになります。
初期化式はループが始まる前に一回だけ実行されます。
波括弧 {} 内に書かれた文は、条件式がが成立している間、実行されます。
後処理式は、波括弧 {} が実行されたあと、実行されます。
実際にphpのfor文を書いてみよう
以下のコードを打ち込んで実行してみてください。
1 2 3 4 5 |
<?php for ($i=0; $i<10; $i++ ) { echo "$i" . "\n"; } ?> |
「0 から 9 までの数字を印字する」というプログラムです。
実行例は以下のようになります。
1
2
3
4
5
6
7
8
9
for 文の中括弧の書き方
for 文は古いプログラミング言語でも存在していたため、以下のような慣習的な書き方があります。
for ($i=0; $i < ループ回数; $i++) {....}
変数名には $i, $j, $k が多い。
数を 1 ではなく 0 から数える。
ループしたい回数を条件式の中に入れ、比較演算子は < を使う。
$i++ という書き方が多い。$i = $i + 1; と同じ動作になります。
break 文
for 文のループの途中でエラーが発生した場合など、強制的にループを抜けたい時には break 文を使います。
特にファイルの読み書きやネットワークへのアクセスなど、実行時にエラーが発生しやすいコードがループ内に含まれている場合は、エラーが発生した時点でループを抜け出すようにしておかないと、何度も同じエラーを発生させることになります。
1 2 3 4 5 6 7 |
for (初期化式; 条件式; 後処理式) { : $ret = do_something(); // なにかをする関数。エラーが出たら false を返却する。 if ($ret==false) { break; // エラーが出たら for ループを強制的に抜け出す。 } } |