PHP しながら ステートメントは、PHP の最も単純なループです。 C と同じように機能します。 PHP しながら ステートメントは、式が true である限り、スコープ内のステートメントを再帰的に実行します。

PHP しながら ステートメントの構文は次のとおりです。

while (condition) {
	statement;
}

PHP しながら このステートメントは最初に条件をクエリします。条件が true を返した場合、ステートメントが実行されます。その後、コードは最初に戻り、式が再評価されます。それでも true である場合は、コードが再度実行されます。このループは、条件が false を返すまで続きます。条件が false を返した場合、ループは終了し、次のコードは実行されません。

PHP しながら ステートメントにコードが 1 行ある場合は、括弧を使用する必要はありません。ただし、コードが複数行ある場合は、括弧を使用する必要があります。

while (condition)
statement;

PHP しながら

以下 PHP しながら この例では、1 から 5 までの数値を出力しました。この例では、$i という名前の変数を定義し、それにデータ 1 を与えました。 PHP しながら ループを作成し、$i が 5 未満である場合の条件を指定しました。ループのスコープ内で、数値を echo で "Number: $i" として出力し、ループが " " で返されるたびにスペースを与えるように設定しました。次に、$i++ を使用して、ループが戻るたびに $i 変数のデータが 1 ずつ増加するようにしました。

ヒント: ループが回転するたびにデータ (数値) が増加または減少する (つまり、数値が変化する) ことを確認しないと、無限ループの状況に直面します。ループ内の条件は常に true を返すため、過剰なリソース使用によりブラウザがクラッシュするか、サーバーが最大実行時間制限に達してスクリプトを停止するまで実行され続けます (php の最大実行時間制限を参照)。

$i = 1;
while ($i < 5) {
  echo "Sayı: {$i} 
";
  $i++;
}
/* 
* Çıktı: 
Sayı: 1
Sayı: 2
Sayı: 3
Sayı: 4
*/

以下 PHP しながら この例では、10 をスキップして 60 から 120 (120 を含む) までの数値を出力しました。この例では、$x という名前の変数を定義し、データに 60 を与えました。 PHP しながら ループを作成し、$x が 120 以下である場合の条件を指定しました。ループのスコープ内で、数値を echo で "Number: $x" として出力し、ループが " " で返されるたびにスペースを与えるように設定しました。次に、$x+=10 として、ループが戻るたびに $x 変数のデータが 10 ずつ増加することを確認しました。

$x = 60;
while ($x <= 120) {
    echo "Sayı: {$x} 
";
    $x += 10;
}
/*
* Çıktı:
Sayı: 60
Sayı: 70
Sayı: 80
Sayı: 90
Sayı: 100
Sayı: 110
Sayı: 120
*/

PHP の代替構文

PHP 制御ステートメントには代替 (コロン) 構文が使用される可能性があります。 PHP しながら このステートメントの代替構文は次のとおりです。中括弧を使用したデフォルトの構文との唯一の違いは、中括弧を開く代わりにステートメントの後にコロンを追加することと、コードの終了時に中括弧を閉じる代わりに endwhile; を追加することです。ステートメントを追加します。

while (condition):
	statement;
endwhile;

PHP しながら 代替構文を次のように例示できます。

以下 PHP しながら この例では、5 を飛ばして 25 から 50 までの数値を出力しました。この例では、$x という名前の変数を定義してデータに 25 を与え、$y という名前の変数を定義してデータに 50 を与えました。 PHP しながら ループを作成し、$x が $y より小さい場合の条件を指定しました。ループのスコープ内で、数値を echo で "Number: $x" として出力し、ループが " " で返されるたびにスペースを与えるように設定しました。次に、$x+=5 として、ループが戻るたびに $x 変数のデータが 5 ずつ増加することを確認しました。

$x = 25;
$y = 50;
while ($x < $y):
    echo "Sayı: {$x} 
";
    $x += 5;
endwhile;
/* 
 * Çıktı: 
Sayı: 25
Sayı: 30
Sayı: 35
Sayı: 40
Sayı: 45
*/