functions.php 分页函数:
<?php
/**
* 分页
* @param $total 总条数
* @param $page 第几页
* @param $perpage 每页条数
* @param $url 链接地址
* @param $maxpage 最大页码
* @return string 最多页数
*/
function create_pager_html($total, $page = 1, $perpage = 20, $url = '', $maxpage = null) {
$totalcount = $total;
if (empty($url) || !is_string($url)) {
$url = array();
foreach ($_GET as $k => $v) {
if ($k != 'page') {
$url[] = urlencode($k) . '=' . urlencode($v);
}
}
$url[] = 'page={page}';
$url = '?' . implode('&', $url);
}
if ($total <= $perpage)
return '';
$total = ceil($total / $perpage);
$pagecount = $total;
$total = ($maxpage && $total > $maxpage) ? $maxpage : $total;
$page = intval($page);
if ($page < 1 || $page > $total)
$page = 1;
$pages = '<div class="pages"><a href="' . str_replace('{page}', $page - 1 <= 0 ? 1 : $page - 1, $url) . '" rel="external nofollow" title="上一页" class="page_start">上一页</a>';
if ($page > 4 && $page <= $total - 4) {
$mini = $page - 3;
$maxi = $page + 2;
} elseif ($page <= 4) {
$mini = 2;
$maxi = $total - 2 < 7 ? $total - 2 : 7;
} elseif ($page > $total - 4) {
$mini = $total - 7 < 3 ? 2 : $total - 7;
$maxi = $total - 2;
}
for ($i = 1; $i <= $total; $i++) {
if ($i != $page) {
$pages .= '<a class="page-num" href="' . str_replace('{page}', $i, $url) . '" rel="external nofollow" >' . $i . '</a>';
} else {
$pages .= '<span class="page_cur">' . $i . '</span>';
}
if ($maxi && $i >= $maxi) {
$i = $total - 2;
$maxi = 0;
}
if (($i == 2 or $total - 2 == $i) && $total > 10) {
$pages .= '';
}
if ($mini && $i >= 2) {
$i = $mini;
$mini = 0;
}
}
$pages .= '<a href="' . str_replace('{page}', $page + 1 >= $total ? $total : $page + 1, $url) . '" rel="external nofollow" title="下一页" class="page_next">下一页</a><span class="pageOp"><span class="sum">共' . $totalcount .
'条 </span><input type="text" class="pages_inp" id="pageno" value="' . $page . '" onkeydown="if(event.keyCode==13 && this.value) {window.location.href='' . $url . ''.replace(/{page}/, this.value);return false;}"><span class="page-sum">/ ' .
$total . '页 </span><input type="button" class="pages_btn" value="GO" onclick="if(document.getElementById('pageno').value>0)window.location.href='' . $url . ''.replace(/{page}/, document.getElementById('pageno').value);"></span></div>';
return $pages;
}
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。







