每行仅显示5个项目,从而在一个循环中显示php模数

时间:2018-08-07 09:03:39

标签: php loops modulus

我想循环额外的死神..通过计算除以五的总项。例如,我有2个项目,那么我将向其添加3个div。当我有8个项目时,我会向其添加2格。

$totalcount = 2;
$check = $totalcount %5;
$totalcount = 8;
$check = $totalcount %5;

我发现我无法使用此方法,因为它循环错误。 在到达循环结束时检测到主循环时,我将使用额外的循环来显示结果。

if($key == $len - 1)
    for ($i = 0; $i < $check; $i++) {
        // do something
    }
}

有没有解决方法,我可以确保$totalcount%5始终等于零,并向其中添加额外的div详细信息?

1 个答案:

答案 0 :(得分:0)

您需要做一些计算才能找出所需的 divs 额外数量。鉴于$totalcount是您的行数,$totalcount将是您需要的 divs 数。然后,您将必须通过以下方式计算 divs 的额外数量

$totalcount = 7; // or some other value
$totaldivs = $totalcount + (5 - ($totalcount % 5));
$extradivs = $totaldivs - $totalcount; // extra divs

最后,您可以使用两个循环,一个循环在 divs 内打印actaul行,而另一个循环印刷额外的 divs ,如下所示:

// loop printing rows inside divs
for($i = 0; $ < $totalcount; ++$i){
    echo '<div>';
    // your rows
    echo '</div>';
}

// loop printing extra divs
for($i = 0; $ < $extradivs; ++$i){
    echo '<div>';
    ...
    echo '</div>';
}

侧注::我将if($key == $len - 1){ ... }块保留在等式之外,但您可以根据需要将其放置在适当的位置。