PHP多分页带省略号实现函数及代码
PHP多分页带省略号实现函数及代码
function page_more($urlrule, $currpage, $pages) { $setpages = 8; // 要显示的页数 $offset = ceil ( $setpages / 2 - 1 ); // 偏移量 $from = $currpage - $offset; // 当前页-偏移量 $to = $currpage + $offset; // 当前页+偏移量 $multipage = ''; // 分页代码 $more = ''; // 末尾更多符号+最后页 $lastpage = '.. <a href="' . pageurl ( $urlrule, $pages ) . '">' . $pages . '</a> '; // 最后页代码 if ($setpages >= $pages) { // 如果要显示的页数大于等于总页数,直接从1显示到最后页 $from = 1; $to = &$pages; } else { // 设置的页数小于总页数时,另外做判断 if ($currpage >= $setpages) { // 当前页大于设置的页数 $multipage .= '<a href="' . pageurl ( $urlrule, 1 ) . '">1</a> .. '; if ($to < $pages) { $more = &$lastpage; } else { $from = $pages - $setpages + 1; $to = &$pages; } } else { // 当前页小于设置的页数,显示从1开始到设置的页数 $from = 1; $to = &$setpages; $more = &$lastpage; } } for($from; $from <= $to; $from ++) { if ($from != $currpage) { $multipage .= '<a href="' . pageurl ( $urlrule, $from ) . '">' . $from . '</a> '; } else { $multipage .= '<span>' . $from . '</span> '; } } return $multipage . $more; }
返回列表