一尘不染

您可以“退出” PHP中的循环吗?

php

我有一个循环正在我的PHP代码中进行一些错误检查。原来看起来像这样…

foreach($results as $result) {
    if (!$condition) {
        $halt = true;
        ErrorHandler::addErrorToStack('Unexpected result.');
    }

    doSomething();
 }

if (!$halt) {
    // do what I want cos I know there was no error
}

这一切都很好,但是尽管有一个错误,它仍然可以循环通过。有没有办法摆脱循环?


阅读 267

收藏
2020-05-26

共1个答案

一尘不染

您正在寻找break语句。

$arr = array('one', 'two', 'three', 'four', 'stop', 'five');
while (list(, $val) = each($arr)) {
    if ($val == 'stop') {
        break;    /* You could also write 'break 1;' here. */
    }
    echo "$val<br />\n";
}
2020-05-26