PHPのfor文とは?意味や書き方を初心者向けにやさしく解説
この記事ではプログラミング言語「PHP」におけるfor文の意味や書き方について詳しく解説します。この記事は次の方におすすめできる内容です。
▼この記事がおすすめの人
- for文の意味や概念について理解したい
- for文の構文やコードの書き方について知りたい
- コピペで使えるサンプルコードを取得したい
▼この記事を書いたひと
フリーランスみやしも(@miyashimo_blog)です。プログラミングやWebサイト制作に関するITの情報を幅広くお届けしていきます。
PHPのfor文とは?意味やできることを解説
まずはPHPにおけるfor文とはどういったものなのか、何ができるのかといった概念的な所か確認してみましょう。
PHPのfor文とは?
今回解説するfor文は条件を満たしている間はくり返し同じ処理をさせることができるプログラミングの基本構文の一つです。
プログラミングでは例えば「複数のデータにまとめて同じ処理をしたい」という事がよくありますが、for文はこの様な繰り返しの作業が求められる目的で便利に使えます。この上でもfor文を使ったプログラムのことを「繰り返し処理」、あるいは「ループ処理」と呼びます。
for文の基本構造
PHPのfor文は次の構造に従ってコードを書くことができます。
▼for文の構造
for (初期化; 条件; 増減) {
// 実行されるコード
}
構造を理解するポイントは()の中に書く初期化、条件、増減」の3つの式です。それぞれの式の意味としては以下の様になります。
- ①初期化:ループが始まる前に一度だけ実行されるコード。
- ②条件:各ループで最初に評価される条件。条件が真(true)である限りループが続行されます。偽(false)である場合はループが終了します。
- ③増減:各ループで最後に実行されるコード。通常はループカウンタを増加または減少させるために使います。
for文では上記①~③を定義することで繰り返し処理の条件を決めて、この上では{}の中に実際に繰り返すコードを書きます。以上の様にfor文を利用することで、PHPでは「どの様な条件で、何を繰り返すか」というプログラムを書くことができます。
for文の基本的な使い方
ここからは一歩進んでfor文の基本的な使い方を確認していきましょう。
基本的なfor文のコード
まずは最も基本的なfor文のサンプルコードを示します。以下は0から9までの数字を順に出力するコードです。
▼サンプルコード
for ($i = 0; $i < 10; $i++) {
echo $i . " ";
}
上記サンプルコードの出力結果としては次の様になります。
▼実行結果
0 1 2 3 4 5 6 7 8 9
for文のコード解説
上記のコードを理解するポイントは、先ほどにも解説した()内の3つの式です。サンプルコードでは具体的に以下の内容を示しています。
▼式の内容
- ①初期化:$i = 0 で変数$iを0で初期化。
- ②条件:$i < 10 で変数$iが10未満であることを評価(trueならループを継続する)
- ③増減:$i++ で変数$iの値を1増加させる。
上記の通りサンプルコードでは0で初期化した変数の値が10未満である限りループを継続するという条件が与えています。この上では結果として{}の中のコードが10回行われて、0~9の数字が画面に出力されています。
for文の応用的な使い方
ここからはより実践的に、for文の応用的な使い方を紹介していきます。
配列の中身をまとめて処理する
for文を使えば配列の中身を順番に取り出してまとめて処理することができます。
▼サンプルコード
$numbers = array(1, 2, 3, 4, 5);
for ($i = 0; $i < count($numbers); $i++) {
echo $numbers[$i] . " ";
}
上記は配列の各要素を順に取り出して出力するfor文のコードです。またcount()は配列に含まれるすべての要素数を返す関数であり、条件の式に利用すれば配列の長さに合わせて自動的に繰り返し回数を制御できます。
条件付きの繰り返し処理
for文とif文を組み合わせれば特定の条件を満たす要素だけを処理できます。以下のサンプルでは数値が偶数か奇数かを判定して、条件に合わせたメッセージを出力しています。
▼サンプルコード
for ($i = 0; $i < 10; $i++) {
if ($i % 2 == 0) {
echo "$i is even\n";
} else {
echo "$i is odd\n";
}
}
breakを使ってループを終了させる
for文の中でbreakを使うとループを終了させることができます。以下は配列内の数値が3に達した時点でループを終了するサンプルです。
▼サンプルコード
$numbers = array(1, 2, 3, 4, 5);
for ($i = 0; $i < count($numbers); $i++) {
if ($numbers[$i] == 3) {
echo "Found 3 at index $i, stopping the loop.\n";
break;
}
echo $numbers[$i] . "\n";
}
for文の活用ポイント
このほかfor文を使ってコードを書くうえでのポイントをいくつか解説します。
無限ループには注意しましょう!!
for文は繰り返し処理(ループ)をするための構文だと説明しましたが無限ループには注意しましょう。
無限ループとはプログラムの繰り返し処理が終了できない状態になることです。無限ループが発生するとプログラムは反応しなくなり、例えばプログラムを強制終了させるなどの対処が必要になります。
公式リファレンスを活用しよう
今回はfor文を初心者向けに説明していますが、より厳密な仕様や挙動について知りたいという方はPHPの公式リファレンスを活用しましょう。リファレンスとは「公式マニュアル」と同じ意味あいで使われるプログラミング用語です。
▼PHP公式サイト
この記事のまとめ
この記事ではプログラミング言語「PHP」におけるfor文の意味や使い方について解説していきました。
いずれもPHPを使ったプログラミングやWebサイト制作などの目的でご活用頂きたい情報です。
このほか当ブログではプログラミングで役立つ情報を多数掲載しています。あわせてご活用くださいませ。
▼関連記事を探す