簡體   English   中英

在x次之后,Foreach會做什么?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM