导致php foreach循环终止的原因是什么?

时间:2013-01-13 16:16:18

标签: php loops foreach terminate

我的一个foreach循环出现问题,循环的PART在一次迭代后终止,没有输出或错误。

在网上搜索答案之后,我仍然不知道这个问题的任何可能原因(并且代码太大而无法对社区有用......)

因此我的问题是,“在一次迭代后,foreach循环终止的可能原因是什么?” (假设需要更多迭代)

2 个答案:

答案 0 :(得分:0)

有多种方法可以阻止foreach循环。以下是一些例子:

<?php
$range = range(1,10);

// continue;
foreach($range as $r){
    if($r!=1){
        continue;
    }
    echo $r.'<br>';
}

// break;
foreach($range as $r){
    if($r>1){
        break;
    }
    echo $r.'<br>';
}

// die;
foreach($range as $r){
    if($r>1){
        die;
    }
}

注意:continue不会突破foreach循环,但会导致数据行被“跳过”

答案 1 :(得分:0)

它仅适用于数组和对象,并且当您尝试在具有不同数据类型或未初始化变量的变量上使用它时会发出错误。

我认为您应该关注此链接http://php.net/manual/en/control-structures.foreach.php,以便更好地了解foreach循环。