foreach内で(たとえば)5サイクルごとに何かを行う方法は?
私は$i++
それを段階的に確認する方法を追加していますか?
モジュロを使用してオフセットを決定します。
$i = 0;
foreach ($array as $a) {
$i++;
if ($i % 5 == 0) {
// your code for every 5th item
}
// your inside loop code
}
各反復で別々に何かをしている場合を除き、そうしないでください。
for ループを使用し、毎回カウンターを 5 ずつ増やします。
$collectionLength = count($collection);
for($i = 0; $i < $collectionLength; i+=5)
{
// Do something
}
それ以外の場合は、モジュロ演算子を使用して、5 回目の反復のいずれかを行っているかどうかを判断できます。
if(($i + 1) % 5 == 0) // assuming i starts at 0
{
// Do something special this time
}
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
}
}