我的代码中有一个foreach循环,任务的进度取决于该循环。现在,我无法找到foreach循环中正在进行的循环。最终,我无法跟踪进展情况。
有没有比包含递增变量更好的方法并检查它是否已经越过n个循环?
简而言之:无论如何要改进以下功能?
示例:
<?php
$counter = 1;
$theN = 100;
foreach( $allLoops as $thisLoop ) {
/*
The code to perform the "task"
*/
if( $counter%$theN == 0 ) {
theFunction();
}
$counter++;
}
答案 0 :(得分:0)
不,你需要保留一个柜台,否则你不能使用foreach。通过定期的循环,你已经有了一个计数器。所以你可以使用它。
但我认为将变量与foreach循环一起使用是最简单的方法,这基本上就是你已经拥有的。 :)(与仅调用该函数一次的其他答案相比)。
$counter = 1;
foreach($array as $key => $value)
{
if ($counter++ % 5 == 0)
{
// This code is executed every fith loop.
}
}