欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php 3行代碼的分頁(yè)算法(求起始頁(yè)和結(jié)束頁(yè))

 更新時(shí)間:2009年10月21日 14:15:19   作者:  
涉及到分頁(yè)時(shí), 除非只顯示上一頁(yè)/下一頁(yè), 否則需要計(jì)算起始頁(yè)和結(jié)束頁(yè). 看過(guò)很多代碼都是用大量的if-else來(lái)實(shí)現(xiàn), 代碼量大, 又不簡(jiǎn)潔. 現(xiàn)在提供一種只需要3行代碼的算法.
一個(gè)好的分頁(yè)算法, 應(yīng)該具有下面的優(yōu)點(diǎn):

當(dāng)前頁(yè)碼應(yīng)該盡量在正中間.
如果"首頁(yè)"和"尾頁(yè)"不可用(當(dāng)前處于第一頁(yè)或最后一頁(yè)), 不要隱藏這兩組文字, 以免鏈接按鈕位置變動(dòng).
算法簡(jiǎn)單.
下面的算法具有前面1和3兩個(gè)優(yōu)點(diǎn).
復(fù)制代碼 代碼如下:

// $curr_index, 當(dāng)前頁(yè)碼.
// $link_count, 鏈接數(shù)量.
// $page_count, 當(dāng)前的數(shù)據(jù)的總頁(yè)數(shù).
// $start, 顯示時(shí)的起始頁(yè)碼.
// $end, 顯示時(shí)的終止頁(yè)碼.
$start = max(1, $curr_index - intval($link_count/2));
$end = min($start + $link_count - 1, $page_count);
$start = max(1, $end - $link_count + 1);
start = Math.max(1, curr_index - parseInt(link_count/2));
end = Math.min(page_count, start + link_count - 1);
start = Math.max(1, end - link_count + 1);

相關(guān)文章

最新評(píng)論