首页 > 解决方案 > PHP逐步通过大数组进行迭代

问题描述

我将数据从一个巨大的 XML 文件加载到一个数组中。现在很好,Web 服务器的内存没有过载。但是,一旦我尝试遍历该数组以处理数据,就会出现内存错误。显然,将 memory-limit 设置为 -1 不是一种选择。

所以,我想要做的是逐步遍历数组。就像前 1,000 个条目一样,然后是下一个,直到没有更多条目为止。像这样:

$i = 0;
foreach($entries as $entry) {
    // Do some stuff with the entries
    if (++$i == 1000) break;
}

我现在想遍历接下来的 1.000 个条目。我的想法是解决数组的关键。就像再次循环但来自条目 [1000]。但是我无法从循环中休息并再次回到循环中。

是,我试图实现的,甚至可能吗?

非常感谢!

标签: phparraysloops

解决方案


从你所做的我认为你应该这样做

for ($i=0; $i>=1000; $i++){

}

注意:$i=0当您希望它从零开始计数时,如果您希望它从 1 开始计数,则将 0 替换为 1


推荐阅读