我正在使用以下工作代码将div中的每个3个元素包装起来:
$count = 1
foreach( $names as $name ):
if ($count%3 == 1) {
echo '<div class="wrap">';
}
echo $name;
if ($count%3 == 0) {
echo '</div>';
}
$count++;
endforeach;
if ($count%3 != 1) echo "</div>";
返回:
<div class="wrap">
name
name
name
</div>
<div class="wrap">
name
name
name
</div>
<div class="wrap">
name
name
name
</div>
<div class="wrap">
name
name
name
</div>
到目前为止一切顺利..但是我希望第二个包装的集合具有4个“名称”元素,如下所示:
<div class="wrap">
name
name
name
</div>
<div class="wrap">
name
name
name
name
</div>
<div class="wrap">
name
name
name
</div>
<div class="wrap">
name
name
name
</div>
每3项应该包装在div中,第二组除外,后者将有4项。
或以另一种方式解释:项目4至8将被包装在div中,而每隔3个项目将被包装在div中。
如何做到这一点?
为前两个DIV添加特殊情况,然后为后两个DIV调整模数。
$count = 1
foreach( $names as $name ):
if ($count == 1 || $count == 4 || ($count > 5 && $count % 3 == 2)) {
echo '<div class="wrap">';
}
echo $name;
if ($count == 3 || $count == 7 || ($count > 7 && $count % 3 == 1)) {
echo '</div>';
}
$count++;
endforeach;
// Finish the last block -- lots of different cases
if ($count < 4 || ($count > 4 && $count < 8) || ($count > 8 && $count % 3 != 2)) {
echo '</div>';
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句