加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php foreach跳出循环遍历

发布时间:2020-05-25 02:31:23 所属栏目:PHP 来源:互联网
导读:本文章向大家解释php中,如何终止foreach循环遍历,需要的朋友可以参考一下。

我有一个foreach循环和一个if语句。如果发现匹配,我需要最终跳出foreach循环。

foreach($equipxml as $equip) {

$current_device = $equip->xpath("name");

if ( $current_device[0] == $device ) {

// found a match in the file

$nodeid = $equip->id;

}

}

如何实现呢?

if不是循环结构,所以你不能使用它跳出循环。

但是,您可以通过简单地调用来break来跳出foreach循环。在您的示例中,它具有所需的效果:

foreach($equipxml as $equip) {

$current_device = $equip->xpath("name");

if ( $current_device[0] == $device ) {

// found a match in the file

$nodeid = $equip->id;

// will leave the foreach loop and also the if statement

break;

}

this_command_is_not_executed_after_a_match_is_found();

}

break采用一个可选参数,它定义了它应该中断多少个循环结构。例:

foreach (array('1','2','3') as $a) {

echo "$a ";

foreach (array('3','1') as $b) {

echo "$b ";

if ($a == $b) {

break 2; // this will break both foreach loops

}

}

echo ". "; // never reached

}

echo "!";

结果输出:

1 3 2 1!

如果出于某些不明原因 - 你想要break一个if语句(这不是一个循环结构,因此每个定义都不易破解),你可以简单地将你包裹if在一个微小的循环结构中,这样你就可以跳出那个代码块。

请注意,这是完全黑客攻击,通常你不想这样做:

do if ($foo)

{

// Do something first...

// Shall we continue with this block,or exit now?

if ($abort === true) break;

// Continue doing something...

} while (false);

如果你想知道语法:它的工作原理是因为这里使用了缩写语法。外部花括号可以省略,因为循环结构只包含一个语句:if ($foo) { .. }。

另一个例子:

do $i++; while ($i < 100)

相当于

do { $i++; } while ($i < 100)

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读