PHP while文とdo…while文のサンプル

PHPのwhile文とdo…while文のサンプルです。

確認環境
・PHP 7.2.8

目次

while文

while (条件式){
  繰り返される箇所
}
  • 条件式がtrueの間、処理を繰り返します。
  • 条件式がfalseの場合、ループ処理を終了します。
  • 最初の条件式の判定でfalseの場合、ループは1回も実行されません。
  • 以下はPHPマニュアルのwhile文のリンクです。
    http://php.net/manual/ja/control-structures.while.php

コード

while文のサンプルです。

<?php
$num = 0;

while ($num < 2){
	echo "$num"; //0 1
	$num ++;
}
?>

4行目は値が2より小さい間、処理を繰り返します。

 

while文の別の記述方法

while文の別の記述方法です。
HTMLに記述する時などに使われます。

<?php $num = 0; ?>

<?php while ($num < 2): ?>

<p><?="$num" ?></p><!-- 0 1が出力される -->

<?php $num ++; ?>

<?php endwhile; ?>

3~9行目がwhile文です。
3行目のwhileの後ろには、コロン:がついています。
9行目は、endwhileがあります。while文の終わりが、わかりやすくなっています。
実行すると0と1が表示されます。

 

while文でbreakを使用する

while文でbreakを使用するサンプルです。

<?php
$num = 0;

while (true){
	$num ++;
	if ($num === 6) {
		break;
	}
	echo "$num"; //1 2 3 4 5
}
?>

7行目のbreakは、4~10行目のwhile文を抜けます。
4行目は、条件をtrueにしています。breakがないと無限ループになるので注意して下さい。

 

while文でcontinueを使用する

while文でcontinueを使用するサンプルです。

<?php
$num = 0;

while ($num < 3){
	$num ++;
	if ($num === 2) {
		continue;
	}
	echo "$num"; //1 3
}
?>

7行目のcontinueは、次は4行目を実行します。そのため9行目は実行されません。

 

do…while文

do{
  繰り返される箇所
} while (条件式)

コード

do…while文のサンプルです。

<?php
$num = 2;

do{
	echo $num; //2
	$num ++;
}while ($num < 2)
?>

7行目は値が2より小さい間、処理を繰り返します。
5行目は、2のみ出力されます。

 

do...while文でbreakを使用する

do...while文でbreakを使用するサンプルです。

<?php
$num = 0;

do{
	$num ++;
	if ($num === 6) {
		break;
	}
	echo $num; //2

}while (true)//1 2 3 4 5
?>

7行目のbreakは、4~11行目のdo...while文を抜けます。
11行目は、条件をtrueにしています。breakがないと無限ループになるので注意して下さい。

 

do...while文でcontinueを使用する

do...while文でcontinueを使用するサンプルです。

<?php
$num = 0;

do{
	$num ++;
	if ($num === 2) {
		continue;
	}
	echo $num; //1 3

}while ($num < 3)
?>

7行目のcontinueは、次は11行目を実行します。そのため9行目は実行されません。

比較演算子

上記コードの<等は比較演算子です。
以下は、PHPの比較演算子の一覧です。

比較演算子 説明
a == b aとbの値は等しい
a === b aとbの値は等しい かつ 型も等しい
a != b aとbの値は等しくない
a <> b aとbの値は等しくない
a !== b aとbの値は等しくない または 型が等しくない
a > b aはbより大きい
a >= b aはbより大きい または 等しい
a < b aはbより小さい
a <= b aはbより小さい または 等しい

関連の記事

PHP if文のサンプル
PHP 配列の値をループで取得するサンプル(foreach文)
PHP 関数のサンプル
PHP エスケープシーケンスのサンプル

△上に戻る