分页与php限制来自get变量的链接数

时间:2015-09-15 17:23:47

标签: php pagination

我正在制作一个简单的图片库并且遇到了障碍。它只是显示多个图像并使用分页来分隔每页16个图像。这一切都与我目前的分页一样。不过我的分页栏上有101个按钮。我想将其限制在当前页面任意一侧的8页4范围内,如果在开头或结尾处,则限制为8页。我的current_page和last_page变量只是页面地址的get变量。有没有一种简单的方法来实现这一目标。

for ($i = 1; $i < ($last_page + 1); $i++) {
    if ($current_page == $i) {
        echo '<li class="active"><a href="?page=' . $i . '">' . $i . '</a></li>';
    } else {
        echo '<li><a href="?page=' . $i . '">' . $i . '</a></li>';
    }
}

1 个答案:

答案 0 :(得分:1)

$currentPage = 4;
$numberPages = 8;
$maxPages = 106;
for ($i = $currentPage - ((int)($numberPages/2)), $pages = 0; $pages < $numberPages && $i <= $maxPages; $i++) {
    if ($i > 0) {
        if ($i == $currentPage) {
            echo '<li class="active"><a href="?page='.$i.
            '">'.$i.
            '</a></li>';
        } else {
            echo '<li><a href="?page='.$i.
            '">'.$i.
            '</a></li>';
        }
        $pages++;
    }
}

这些方面应该有效