我正在嘗試製作某種分頁系統。php while-loop-關閉div
每個頁面最多有4個來自數據庫的元素。
每頁都被一個div(div id ='p1'class ='pagedemo _current')所包圍。所以我有以下幾點:
$i=0;
$pag=0;
$arr = array();
while($rowNews = mysql_fetch_array($rsNews)){
$i++;
$arr[$i] = $rowNews;
if($i%4==1){
echo "div id='p1' class='pagedemo _current'"
}
...show content...
if($i%4 ==0){
echo"</div>"; //close the tag of class="pagedemo"
}
}//end of while
這打開一個div,當我是1; 5; 9 ....並在4(4; 8; 12 ...)的倍數時關閉。但我也想在$ i爲最後一個數字時關閉div,即:如果只有6個結果,我想關閉第六元素後的div。
我沒有完成它
任何想法?
if ($i%4 != 0) {
echo"</div>";
}
編輯:
關心$ i == $ total,那只是因爲你在循環開始時做了一個$ i ++。如果你以後使用的是foreach,它會是$ i == $ total-1。順便說一句,我建議你從頭開始刪除$ i ++,並更新你的代碼以反映這種變化。索引從0開始計數而不是1!如果你把它誤導給其他人。 – evildead
啊,我同意。但在他的情況下,他希望他的行從1開始,而不是0.如果我確實從0開始,那麼我會將$ i%4 == 0更改爲($ i + 1)%4 == 0。 – ace
王牌:其實評論是爲user794035,我雖然我應該建議他如何做到這一點。我認爲這樣做的風格很糟糕。 – evildead