跳出 PHP 中的 Foreach 迴圈

Olorunfemi Akinlua 2023年1月30日 2022年6月7日
  1. PHP 中的 foreach 迴圈
  2. 在 PHP 中使用 break 語句跳出 foreach 迴圈
跳出 PHP 中的 Foreach 迴圈

作為開發人員,我們使用 break 語句 來跳出迴圈並在迴圈之後的下一條語句處繼續。通常,必須為這種情況的發生設定一個條件,但這並不重要。

你經常會在 for 迴圈、while 迴圈、switch 語句甚至 foreach 迴圈中找到中斷。因此,要根據某些條件終止任何迴圈,特別是在迭代次數未知的情況下,使用 break

在本文中,我們將考慮如何將 break 語句合併到 foreach 迴圈中、用例以及不要忘記的事情。

PHP 中的 foreach 迴圈

在我們瞭解如何使用 break 語句之前,讓我們簡單回顧一下 foreach 迴圈。與 for 迴圈不同,我們事先知道要迭代多少次,foreach 迴圈通過陣列指標迭代並遍歷陣列並將每個陣列元素分配給陣列變數。

假設我們正在查詢陣列中的數字、值或字串,但不知道該元素在陣列中的位置,並且需要將其用於其他操作。一旦找到我們需要的數字、值或字串,我們就可以使用 break 語句離開迴圈。

示例程式碼:

<?php
$colors = array("red", "green", "blue", "yellow");

foreach ($colors as $value) {
    echo "$value <br>";
}
?>

輸出:

red <br>green <br>blue <br>yellow <br>

在 PHP 中使用 break 語句跳出 foreach 迴圈

下圖描述了 break 語句如何在 foreach 迴圈中工作。foreach 迴圈遍歷每個陣列元素並將其分配給迴圈宣告中宣告的變數。

foreach 迴圈流程圖

在每次迭代中,迴圈程式碼塊使用陣列指標指向的當前元素並測試將執行 break 操作的條件。如果條件為真,則程式碼跳出迴圈,如果為假,則繼續進行下一次迭代。

現在,瞭解 break 語句的工作方式,讓我們考慮一個簡單的 foreach 示例。

<?php
foreach (array('1','2','3') as $first) {
    echo "$first ";
    foreach (array('3','2','1') as $second) {
        echo "$second ";
        if ($first == $second) {
            break;  // this will break both foreach loops
        }
    }
    echo ". ";  // never reached!
}
echo "Loop Ended";
?>

輸出:

1 3 2 1 . 2 3 2 . 3 3 . Loop Ended

我們遍歷上面程式碼中的每個元素,並使用當前元素在 foreach 迴圈中執行塊程式碼。

我們可以在 foreach 迴圈中使用 break 語句來處理任何型別的陣列,例如關聯陣列。在這裡,一旦 $x 到達中間陣列元素,它就會停止 foreach 迴圈。

<?php
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");

foreach($age as $x => $val) {
    echo "$x = $val<br>";
    if ($x == "Ben") {
        break;
    }
}
?>

輸出:

Peter = 35<br>Ben = 37<br>

請記住,條件對於成功的 break 操作很有用。

Olorunfemi Akinlua avatar Olorunfemi Akinlua avatar

Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.

LinkedIn

相關文章 - PHP Loop