首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >停止并继续foreach循环

停止并继续foreach循环
EN

Stack Overflow用户
提问于 2014-03-25 22:21:04
回答 2查看 175关注 0票数 1

我有一个包含HTML代码块的页面,它们都是一样的。因此,我使用foreach循环来复制内容(最多复制6次)。然而,在页面的中间,我需要跳出循环,做一些其他的事情,然后继续。它看起来像这样:

代码语言:javascript
复制
BLOCK 1
BLOCK 2
BLOCK 3

(jump out of loop)

BLOCK 4
BLOCK 5

我试过使用if statement

代码语言:javascript
复制
if on `BLOCK 3`: 
insert some content afterwards

但理想情况下,我想先停止它,然后再启动它(因为插入的内容与此无关)。

从理论上讲,我可以用两个foreach循环(两边各一个)来做这件事,但在我看来,这似乎没有必要。

有没有一种方法可以完全跳出循环,然后返回(一旦编写了一些HTML,或者执行了一个函数)?

我是一个新手,所以任何帮助或建议都是很好的。

EN

回答 2

Stack Overflow用户

发布于 2014-03-25 22:51:05

那么我们就这么做吧:

代码语言:javascript
复制
for (;;) {
    if (needsSpecialThreatment) {
        doSmthSpecial;
        continue;
    }
    doUsualStuff;
}

( PHP 是循环的关键字,这里不是伪代码)

票数 1
EN

Stack Overflow用户

发布于 2014-03-25 22:38:05

你想得太多了。这样的代码应该可以满足您的需求:

代码语言:javascript
复制
<?php
    $temp = 0;
    foreach($blocks_of_HTML as $block_of_HTML){
        $temp += 1
        if($temp = 3){
            doSomethingElse();
        }

        //Code to write HTML Block
    }
?>

如果你只需要做一些其他的事情,只需要跟踪一个计数器变量,并执行一个函数来做你需要做的任何事情,然后允许循环按预期继续。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22637359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档