迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

跳出 PHP 中的 Foreach 循环

作者:迹忆客 最近更新:2023/03/22 浏览次数:

作为开发人员,我们使用 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 操作很有用。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 PHP 中获取时间差的分钟数

发布时间:2023/03/29 浏览次数:183 分类:PHP

本文介绍了如何在 PHP 中获取时间差的分钟数,包括 date_diff()函数和数学公式。它包括 date_diff()函数和数学公式。

PHP 中的重定向

发布时间:2023/03/29 浏览次数:136 分类:PHP

本教程演示了如何将用户从页面重定向到 PHP 中的其他页面

PHP 分页

发布时间:2023/03/29 浏览次数:66 分类:PHP

本教程介绍如何在 PHP 中对数据库行进行分页

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便