for ループは、PHPで最も複雑なループです。 for は、Cのforループと同様に動作します。 for ループの構文は、次のようになります。
最初の式( 式1 )は、ループ開始時に無条件に 評価(実行)されます。
各繰り返しの開始時に、 式2 が評価されます。 その式の値が TRUE が場合、ループは継続され、括弧 内の文が実行されます。値が FALSE の場合、ループの 実行は終了します。
各繰り返しの後、 式3 が評価(実行)されます。
各式は、空とすることができます。 式2 を空 にすることは、無限実行ループを意味します。(PHPは、この状態をC言語 のように暗黙の内に TRUE とみなします) for 論理式を使用するよりも条件付 break 文によりループを終了させる方が好ましい場合には、この機能は思った ほど便利ではないかもしれません。
次の例について考えてみましょう。以下の例は全て1~10までの数を表示します。
もちろん、最初の例(もしくは 4番目の例)が最善であると考えられます。 しかし、 for ループにおいて空の式を使用できると、 多くの場合、便利だということに気づかれるかと思います。
PHPは、 for ループ用に"コロン構文"もサポートします。
他の言語には、配列やハッシュを連続的に処理するために foreach 文があります。PHP 3にはこうした 構文はありません。PHP 4はこれをサポートしています。 (foreach を参照下さい) PHP 3 では、同様の効果を得るために while 文を list() および each() と組み合わせて使用します。 例については、これらの関数に関するドキュメントを参照下さい。