[英]Foreach do something after x times?
我正在尝试创建一个带有链接的自动块[它们来自数组],在链接太多之前一切进展顺利,现在它们都在同一行上,如何在4次打印后进行foreach打印?
现在是这样的:
foreach($this->rpanelinks as $name => $url) {
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
}
谢谢!
使用计数器:
$i = 1;
foreach($this->rpanelinks as $name => $url) {
if($i == 4)
echo '<br>';
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
++$i;
}
或者如果您不想每 4次
$i = 1;
foreach($this->rpanelinks as $name => $url) {
if($i % 4 == 0)
echo '<br>';
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
++$i;
}
$i % 4
计算其余的操作$i / 4
,如果它为0
则uf $i
的值可除以4
。
老实说,我对这个问题不太了解。 但是,您可以将任何逻辑添加到所需的foreach中。 例如:
$counter = 0;
foreach($this->rpanelinks as $name => $url) {
$counter ++;
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
if ($counter %4 == 0) echo '<br />';
}
$i = 0;
foreach($this->rpanelinks as $name => $url) {
++$i;
if($i >= 4){
echo '<br/>';
$i=0;
}
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
}
使用变量来计算您的链接,下面的代码在每4个链接后会打印breakline
$counter = 0;
foreach($this->rpanelinks as $name => $url) {
echo '<a href="' . BASE_URL . $url . '">' . $name . '</a>';
if(++$counter % 4 == 0) {
echo '<br />';
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.