php - 在迭代中途在 foreach 中执行更改代码

标签 php foreach

我正在尝试创建一个 php foreach 语句,它为前 5 次迭代输出不同的代码,然后为其余的执行不同的输出。

我找到了这个片段,它在给定的限制处中断,但我如何才能从另一个 foreach 循环的最后一次迭代继续?无论如何,这可能不是最好的方法。

 $i = 0;
foreach ($arr as $k => $v) {
    /* Do stuff */
    if (++$i == 2) break;
}

这可能吗?我该怎么做?

谢谢! 泽姆

最佳答案

您可以使用 array_slice为此:

foreach (array_slice($arr, 0, 5, true) as $k => $v) {
    /* Do stuff 1-5 */
}
foreach (array_slice($arr, 5, null, true) as $k => $v) {
    /* Do stuff 6-end */
}

关于php - 在迭代中途在 foreach 中执行更改代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5952241/

相关文章:

PHP - 类忘记设置变量

php - 一次为每次点击生成一个唯一的 ID

javascript - 如何使用 AJAX 将选择框值作为数组从 PHP 的一个页面传递到另一个页面?

java - 如何遍历通配符泛型?

PHP 数组解析 robots.txt 中的站点地图

r - 在R中使用 "foreach()"函数时如何创建进度条?

php - Symfony ajax 响应但带有 header : HTTP/1. 0 200 OK Cache-Control: no-cache Date

javascript - 使用 PHP,如果数据在我的网站中保存为 JavaScript 变量,我如何将数据发送到服务器?

java - 迭代列表时删除元素

php - 如何在 laravel Blade View 中打破 foreach 循环?