PHP for文が初心者でもわかる!絶対知りたいwhile文との違いも紹介

プログラミング言語PHPのfor文について、Web開発経験のある筆者が初心者向けに丁寧に解説します。

本記事を読めば、PHP for文の書き方・使い方、breakとcontinueの違い、for文とwhile文の違いについて理解できるでしょう。

特に、for文とwhile文の違いは重要なので、ぜひ知っておきましょう。

※PHP while文を学習したい人は、while文について詳しく解説した記事をご覧ください。

ぜひ最後まで読んで、PHP for文の基本を理解してください!

PHP forの書き方

プログラムの処理の中で同じ処理を繰り返しの処理をしたいときがあります。そんなときは、今回紹介するfor文を使いましょう。

For文の構文は次のとおりです。

[]はオプションです。無くても動きますがfor(;;) は無限ループになりますので、気をつけて使いましょう 。

For文が実際にする処理する流れを見てみましょう。

①カウンター用変数の初期化処理

②条件式の評価

③処理文

④カウンター用変数の更新

⑤2の条件式処理に移動。条件式の評価が「正」の間ループが行われる。「誤」になった場合はfor文を終了する

\文字より動画で学びたいあなたへ/

Udemyで講座を探す >

PHP for文を実際に使ってみよう

では、実際に簡単なプログラムの動きを見てみましょう。次に示すサンプルソースコード1では、0〜10 を順番に出力する例です。

For文の流れ

①初期化処理:ループ制御に使う「変数i」が「0」で初期化される
②条件式の評価:iが10以下の間はループを実施、現在iは「0」である
③処理を実施:printで、コンソール画面上に「変数i」を出力
④更新式を実施:変数iに1を足して変数iを更新する
⑤2の条件式処理に移動し、条件式の評価が「正」の間ループが行われる。「誤」になった場合終了する。

PHP for文におけるbreak

for文のループ処理の途中で,特定の条件になったら処理を中断したい時には「break」文を使用します。

構文は以下の通りです。

break文が実施されると現在のループ処理を強制終了し、for文から抜ける処理になります。

それでは、簡単なプログラム見てみましょう。

次のサンプルソースコード2は、サンプルソースコード1にbreak文を追加したものです。

変数iが5のときbreakが実施されます。

実行結果を見ると、5以降が出力されていません。変数iが5のときにでbreak処理されfor文の処理から抜けていることがわかります。

この様に特定の処理から抜けるときは、break文を使います。

PHP for文におけるcontinue

先程のbreak文では実施中のループ処理を強制的に終了するものでした。

しかし、ループ処理を終了せず特定周回の処理のみをスキップして欲しいときがあります。そのような場合はcontinue文が有用です。

構文は次の通りです。

continueが実施されると繰り返し行う処理2の処理がスキップされ次の周回の処理と移動します。

それでは、実際のプログラムを見てみましょう。

サンプルソースコード3は、サンプルソースコード2のbreak文がcontinue文に置き換わったものです。

実行結果をみると、変数iが5のときは、その周回をスキップされ変数iの値が出力されていないことがわかります。また、for文から抜けておらず、6〜10が引き継ぎ出力されていることがわかります。

この様に、continue文を使うことで特定のループ処理をスキップすることが可能です。

PHP for文とwhile文の使い分け

今回勉強したfor文と同じようにで繰り返しの処理ができるものとしてwhile文があります。どういったケースで使い分ければ良いのでしょうか?

for文→繰り返しの処理の回数があらかじめ決まっている

while文→何回繰り返し処理すれば良いかわからない。特定の条件の間のみ実施したい。

※PHP while文を学習したい人は、while文について詳しく解説した記事をご覧ください。

一般的な使い分けとしては上記のようになります。

もちろん、どちらを使っても同じような処理は書けます。プロジェクトによっては指定があったり、使い方に関しては好みの問題であるという人もいます。
それぞれの特徴をきちんと理解し使いこなしていきましょう。