如何限制分页中显示的页码?

Hem*_*ang 2 php pagination

我试图限制显示的分页.我的网站有500多页,所有500多个数字都显示在分页中.

我试图像这样限制它:

Prev 1 2 3 4 5 6 Next 
Run Code Online (Sandbox Code Playgroud)

我的代码:

$skin = new skin('site/pagination'); $pagination = '';
if ($pages >= 1 && $page <= $pages) {
    for ($x=1; $x<=$pages; $x++) {
        $TMPL['pagination'] = ($x == $page) ? '<strong><a href="/writer/'.urlencode($name).'/'.$x.'">'.$x.'</a></strong> ' : '<a href="/writer/'.urlencode($name).'/'.$x.'">'.$x.'</a> ';
        $pagination .= $skin->make();
    }
}
Run Code Online (Sandbox Code Playgroud)

Hem*_*ang 9

分页页数限制问题由chnage解决

for ($x=1; $x<=$pages; $x++)
Run Code Online (Sandbox Code Playgroud)

for($x = max(1, $page - 5); $x <= min($page + 5, $pages); $x++)
Run Code Online (Sandbox Code Playgroud)


wal*_*lyk 7

你对此有何看法?:

for ($x=1; $x<=$pages; $x++)
Run Code Online (Sandbox Code Playgroud)

它将为每个页面创建一个条目.如果你不想那样,那就限制它有意义:

for ($x=1; $x <= min(5, $pages); $x++)
Run Code Online (Sandbox Code Playgroud)

更好的是考虑当前页面:

for ($x=max($curpage-5, 1); $x<=max(1, min($pages,$curpage+5)); $x++)
Run Code Online (Sandbox Code Playgroud)