如何在foreach中每5个(例如)周期做一些事情?
我添加$i++
如何逐步检查?
答案 0 :(得分:8)
使用模数来确定偏移量。
$i = 0;
foreach ($array as $a) {
$i++;
if ($i % 5 == 0) {
// your code for every 5th item
}
// your inside loop code
}
答案 1 :(得分:6)
除非你在每次迭代中分别做某事,否则不要。
使用for循环并每次将计数器增加5:
$collectionLength = count($collection);
for($i = 0; $i < $collectionLength; i+=5)
{
// Do something
}
否则,您可以使用模运算符来确定您是否处于第五次迭代之一:
if(($i + 1) % 5 == 0) // assuming i starts at 0
{
// Do something special this time
}
答案 2 :(得分:1)
for($i = 0; $i < $items; $i++){
//for every 5th item, assuming i starts at 0 (skip)
if($i % 5 == 0 && $i != 0){
//execute your code
}
}