こんにちは。 PHP基礎 は、プログラミング言語「PHP」を独学で学習するためのコンテンツとして、株式会社NEUGATEの教育事業部が作成しています。
この講座は、プログラミングの知識がゼロでも、イチから学習することができます。
何度も見返すことができますので、焦らず少しづつ覚えていきましょう。
この記事はシリーズとなっていますので、<<初回から観覧したい方はこちら>>からご覧ください。
今回は、繰り返し文を学習していきます。
繰り返し文とは
繰り返し文は同じ処理を何度も繰り返し行いたい際に便利な文です。
繰り返し文を使用しない例
$i = 0
echo $i
$i += 1
echo $i
$i += 1
echo $i
$i += 1
実行結果
0
1
2
何度も同じ処理を記述しており、冗長です。良いコードとは言えませんね。では、繰り返し文を見てみましょう。
繰り返し文を使用した例
for ($i = 0; $i =< 3; $i++) {
echo $i;
}
実行結果
0
1
2
いかがでしょうか。上記のコードはいずれも同じ処理を行っているものです。
繰り返し文を使用すると 短く簡潔なコードになり、可視性やメンテナンス性が高まりました。
今回は基本の繰り返し文3種類を学習していきましょう。
インクリメント演算子・デクリメント演算子
繰り返し文を作成する前に、よく使用する演算子について学習しておきましょう。
プログラム内ではよく、「変数を1づつ増やしたい」「変数を1づつ減らしたい」といったことがあります。
その際に使用するのがインクリメント演算子・演算子です。
1づつ増やす、減らすには
$a = a + 1
$a = a – 1
と記述することもできますが、PHPでは以下のような演算子を使用しても同じ処理を行う事ができます。
インクリメント演算子(++)…指定された変数の値を1づつ増やす
デクリメント演算子(–)…指定された変数の値を1づつ減らす
++$a (前置インクリメント) aに1プラスした後にaを使用していく
$a++ (後置インクリメント) aを使用した後にaに1プラスする
–$a (前置デクリメント) aから1マイナスした後にaを使用していく
$a– (後置デクリメント) aを使用した後にaから1マイナスする
インクリメント演算子・デクリメント演算子は変数の前に付けるか後に付けるかで
処理の結果が変わる場合もあります。順番を意識して使用しましょう。
while文
whileは英語で「~する間」ですね。
繰り返し文では「条件式が成立する(trueになる)間は繰り返す」という意味となります。
構文
カウンタ変数の宣言
while (条件式) {
繰り返す処理
}
カウンタ変数…繰り返し文の条件式内で使用する変数のこと
条件式…繰り返しを行う条件を記した式。ここは比較演算子等を使用して、欠課がtrue / false になるよう設定します。
$i = 1; //カウンタ変数の宣言
while ($i <= 10) { //条件式の設定
echo $i; //繰り返したい処理
$i++; //繰り返したい処理
}
1
2
3
4
5
6
7
8
9
10
このwhile文を日本語訳すると以下のようになります。
カウンタ変数に初期値として1を設定する。
繰り返しの条件はカウンタ変数が10以下である場合とし、これに当てはまる場合は
変数の表示
カウンタ変数に1プラスする。
さて、while文は「条件式が成立する間は繰り返す」繰り返し文でしたね。
二度目の繰り返しに差し掛かる際には、条件式のカウンタ変数が2になりますね。(一度目の繰り返しの最後にインクリメントされています)
そのため、条件式は (2 <= 10) となり、この式は成立するので繰り返し行いたい処理を実行することができます。
繰り返しを重ねカウンタ変数が増え、条件式が (11 <= 10) となった際にはこの式は成立しないので
繰り返し処理が行われず、while文は終了です。
for文
for文は、while文のカウンタ変数の宣言と処理を構文に組み込んだものです。
構文
for (カウンタ変数の宣言 条件式 カウンタ変数の処理) {
繰り返したい処理
}
for ($i = 1; $i =< 10; $i++) {
echo $i;
}
上のコードは、先ほどのwhile文をfor文に書き換えたものです。
構文の中に繰り返し文に必要な要素が全て入っているので、より簡潔に見えますね。
while文とfor文はお互いに書き換えることができるので、どちらで記述してもOKです。
現場では繰り返す回数が決定している際はfor文、決定していない際はwhile文を使用することが多いです。
do-while文
do-while文はひとつの仕組みを除けばwhile文と同じです。
条件式の判定を繰り返しの最後に行うという点です。
つまり、条件式がtrueの場合もfalseの場合も必ず一度は繰り返し処理が行われます。
構文
カウンタ変数の宣言
do {
繰り返し行う処理
} while (条件式);
$i = 1;
do {
echo $i;
$i++
} while ($i =< 10);
PHPの処理は上から順に実行されます。
そのため、この構文だと 先に繰り返し処理が実行されてから条件式にかけられる という流れとなっています。
まとめ
今回は繰り返し文について学習しました。
使用頻度が高い構文となっていますので、少しづつ慣れていきましょう。
次回はについて学習します。
次回の記事はこちら
<<第6回【PHP入門】 配列>>
コメント