ホームページ >バックエンド開発 >PHPチュートリアル >PHPがループから抜け出すためのいくつかの方法と違い
PHP のループ構造には、一般的に for ループ、while ループ、do{} while ループ、foreach ループが含まれます。これは、ループの種類に関係なく、 でループから抜け出す方法です。 PHP は大まかに次のようなものです。 いくつかの方法:
コード:
<?php $i = 1; while (true) { // 这里看上去这个循环会一直执行 if ($i==2) {// 2跳过不显示 $i++; continue; } else if ($i==5) {// 但到这里$i=5就跳出循循环了 break; } else { echo $i . '<br>'; } $i++; } exit; echo '这里不输出'; ?>
結果:
1
3
4
Continue
continue は、ループ構造で使用され、プログラムが終了後にコードを放棄するように制御します。このループの continue ステートメントを実行し、次のサイクルに進みます。 continue自体はループ構造から飛び出すわけではなく、今回はループを放棄するだけです。 continue をループ構造以外の構造 (if 文、switch 文など) で使用すると、プログラムが誤動作します。
たとえば、次の PHP コード フラグメントでは:
<?php for($i = 1;$i <= 100; $i++ ){ if($i % 3 == 0 || $i % 7 == 0){ continue; } & #160; else{ echo”$i \n<br/>”; } } ?>
PHP コード フラグメントの機能は、7 で割り切れず、3 で割り切れない 100 以内の自然数を出力することです。まず、次の PHP コード
フラグメントで if 条件を使用します。ループ このステートメントは割り切れる数値を決定し、Continue ステートメントを実行して次のループに直接入ります。次の出力ステートメントは実行されません。
break
次の複数のループのネストの例を見てください: for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $j;
echo”$m \n<br/>”;
if($m < 90 || $m > 190) {
break 2;
}
}
}
ここでは、break 2 を使用して 2 つのループから飛び出すことができます。試して 2 を削除すると、結果はまったく異なります。パラメーターが使用されない場合、このループのみが飛び出し、最初のレベルのループが実行を継続します。
gotogoto は実際には単なる
演算子 です。他の言語と同様、goto の乱用はプログラムの可読性の大幅な低下につながります。 goto の機能は、プログラムの実行を現在位置から別の位置にジャンプすることです。goto 自体にはループを終了する機能はありませんが、そのジャンプ位置によりループからのジャンプとして使用できます。ただし、PHP5.3以降ではgotoのサポートが終了しているため、gotoの使用は避けるようにしてください。
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) <= 29){
goto a;
}
echo “$i”;
}
a:
echo” this is the end”;
この例は、goto を使用してループを抜け出す例です。この例は、29 より大きい 1000 以内の数値の平方根を検出するために使用されます。 。
exitexitはプログラムの実行を終了するために使用されます。どこでも使えるし、ループから飛び出す意味もない。 exit はパラメーターを受け取ることができます。パラメーターが
の場合、PHP はその文字列を直接出力します。そのパラメーターは終了ステータスとして使用されます。
<?php for($i = 1000;$i >= 1 ; $i– ){ if( sqrt($i) >= 29){ echo”$i \n<br/>”; } else{ exit; } } echo”本行将不会被输出”; ?>上記の例では、コードの実行がループ内で直接終了するため、後続のコードは実行されません。PHP Web ページ内にある場合、終了後の HTML コードも実行されません。出力。
return ステートメントは、コードの一部を終了してパラメーターを返すために使用されます。関数から呼び出すことも、include() ステートメントまたは require() ステートメントに含まれるファイルから呼び出すこともできます。また、関数から呼び出された場合、プログラムはすぐに終了し、 include() または require() ステートメントに含まれるファイルから呼び出された場合、プログラムの実行は直ちにそのファイルを呼び出したプログラムに戻り、戻り値が include() の戻り値として使用されます。またはrequire()。そして、メインプログラムで呼び出された場合、メインプログラムはすぐに実行を停止します
<?php for($i = 1000;$i >= 1 ; $i– ){ if( sqrt($i) >= 29){ echo”$i \n<br/>”; } else{ return; } } echo”本行将不会被输出”; ?>
以上がPHPがループから抜け出すためのいくつかの方法と違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。