PHP foreach并继续

时间:2015-06-18 20:49:16

标签: php loops foreach

我在某些代码中遇到了一个我正在尝试调试的函数,我不确定为什么会这样编写

foreach ($companies as $company) {
    if (!isset($company->account)) {
        continue;
    }
    some_function($company, $sectorsMap, $subSectorsMap);
}

这是一样的吗?

foreach ($companies as $company) {
    if (!isset($company->account)) {
        some_function($company, $sectorsMap, $subSectorsMap);
    }
}

继续控制结构如何工作?

干杯

1 个答案:

答案 0 :(得分:1)

如果您使if语句等效,我会说顶级版本更通用,更适用于更复杂的语句,原因如下:

  1. 如果您有多个if - continue语句,第一种方法将允许您按顺序列出它们而不使用嵌套缩进,这可以使您的代码更清晰。使用第二种方法,您可以获得大量嵌套缩进。
  2. 如果在if - continue语句之后有很多代码,第一种方法会使大部分代码缩进并且可能更容易阅读。
  3. 在你的continue中有一个语句的具体例子中,它可能没什么区别,但是如果你要选择一种方法在任何地方使用,第一种方法对于复杂循环可能更好。< / p>