ホームページ > バックエンド開発 > PHPの問題 > PHPのループから抜け出す方法はいくつかあります

PHPのループから抜け出す方法はいくつかあります

爱喝马黛茶的安东尼
リリース: 2023-02-23 13:32:01
オリジナル
6190 人が閲覧しました

PHPのループから抜け出す方法はいくつかあります

1. return ステートメントの機能

(1) return 現在のメソッドを終了し、呼び出されたメソッドのステートメントに戻り、実行を継続します。

(2) return は、メソッドを呼び出すステートメントに値を返します。戻り値のデータ型は、メソッド宣言の戻り値の型と一致している必要があります。

(3) Return の後にパラメータを指定しないこともできます。パラメータがないと、空の値が返されます。実際、主な目的は、関数の実行を中断して、呼び出し元の関数に戻ることです。

2. Break 文の役割 (1) Break はループ本体の中で、ループの実行を強制的に終了、つまりループの処理全体を終了します。ループを実行する条件が成立しているかどうかを判断しますが、直接ループ文の下の文に移ります。

(2) ループ本体内のswitch文本体にbreakが出現した場合、その機能はswitch文本体から飛び出すだけです。

3. continue 文の機能

このループの実行を終了、つまり現在のループ内の continue 文以降の未実行の文をスキップして、次のループ条件を判定します。 。

4. exit 関数の役割

exit はすべてのスクリプトを終了する関数です。

関連する推奨事項: 「

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 . &#39;<br>&#39;;
    }
    $i++;
}
exit;
echo &#39;这里不输出&#39;;
?>
ログイン後にコピー

結果:

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 コード スニペットの機能は、100 以内で出力することです。 7 で割り切れるが 3 で割り切れない自然数の場合、最初に if 条件文がループ内で使用されて割り切れる数が決定され、次に continue; 文が実行されて、直接入力されます。次のループ。次の出力ステートメントは実行されません。

break

break は、上記のさまざまなループや switch ステートメントで使用されます。その機能は、現在の文法構造から飛び出し、次のステートメントを実行することです。 Break ステートメントは、ループから飛び出すレベルの数を表すパラメーター n を受け取ることができます。複数のループから飛び出す場合は、n を使用して飛び出すレベルの数を表すことができます。パラメータがない場合、デフォルトでは現在のループから抜け出します。

次の複数ループのネストの例を見てください:

コードは次のとおりです:

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 を削除すると、得られる結果はまったく異なります。パラメーターが使用されない場合、このループのみが飛び出し、最初のレベルのループが実行を継続します。

goto

goto は実際には単なる演算子です。他の言語と同様、PHP では goto の乱用は推奨されていません。goto の乱用はプログラムの可読性の重大な低下につながります。 。 goto の機能は、プログラムの実行を現在位置から任意の位置にジャンプすることであり、goto 自体にはループを終了する機能はありませんが、そのジャンプ位置によりループから抜け出すことができます。ただし、PHP5.3以降ではgotoのサポートが終了しているため、gotoの使用は避けるようにしてください。

次は、goto を使用してループから抜け出す例です。

コードは次のとおりです:

for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) <= 29){
goto a;
}
echo “$i”;
}
a:
echo” this is the end”;
ログイン後にコピー

この例では、goto が使用されています。この例は、1000 以内でそれらの数値の平方根が 29 より大きいことを検出するために使用されます。

exit

exit はプログラムの実行を終了するために使用されます。どこでも使えるし、ループから飛び出す意味もない。 exit は 1 つのパラメータを取ることができます。パラメータが文字列の場合、PHP はその文字列を直接出力します。パラメータが整数 (範囲は 0 ~ 254) の場合、そのパラメータは終了ステータスとして使用されます。

コードは次のとおりです:

<?php
for($i = 1000;$i >= 1 ; $i– ){
if( sqrt($i) >= 29){
echo”$i \n<br/>”;
}
else{
exit;
}
}
echo”本行将不会被输出”;
?>
ログイン後にコピー

上記の例では、コードの実行がループ内で直接終了するため、次のコードは実行されません。 PHPのWebページでは、終了後のHTMLコードも出力されません。

return

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート