分页在做数据管理的时候是必不可少的,亲写亲测有效的php分页代码及原理实例分析。来看下一段简单的代码//获取php分页代码
public function getPageHtml($currentpage,$totalcount,$pagesize=25,$sql){
//$sql 如: ?name=xxx&tel=123
$pagerange=5;//分页宽度
$totalpage=0;//总页数
//x条记录 <> 共y页
if($totalcount<=$pagesize){
return "$totalcount 条记录";
}
//总页数
if($totalcount%$pagesize==0){
$totalpage=$totalcount/$pagesize;
}else{
$totalpage=($totalcount-($totalcount%$pagesize))/$pagesize+1;
}
$startpage=$currentpage-$pagerange>0?$currentpage-$pagerange:1;
$endpage=$currentpage+$pagerange
//头部
$page=''.$totalcount.'条记录';
//首页
if($startpage>1){
if($sql==''){
$page.="首页";
}else{
$page.="首页";
}
}
//当前分页前
for($i=$startpage;$i
if($sql==''){
$page.="$i";
}else{
$page.="$i";
}
}
//当前分页
$page.=''.$currentpage.'';
//当前分页后
for($i=$currentpage+1;$i<=$endpage;$i++){
if($sql==''){
$page.="$i";
}else{
$page.="$i";
}
}
//末页
if($endpage
if($sql==''){
$page.="末页";
}else{
$page.="末页";
}
}
//总页数
$page.='共'.$totalpage.'页';
return '
}
调用方式getPageHtml(当前页码,总记录数,分页宽,查询条件);
----------------
这是在最近写了个简单的管理系统中用到的,其中getPageHtml();第三个参数是指分布条跨度,
从当前页数起,减去跨度5等于6,加跨度5等于16,小于6或大于16则显示首页和末页。
整体的现实过程是通过页面完成数据的查询,再将相应的数值传入该方法得到相应的分页条代码。
第四个参数:数据查询条件,如:?userid=5&level=3
这里还分享个获取数据总页数的方法//获取总分页数(参数:总记录数,每页显示条数)
public function getTotalPage($totalcount,$pagesize){
if($totalcount<1){return 0;}
if($totalcount%$pagesize==0){
$totalpage=$totalcount/$pagesize;
}else{
$totalpage=($totalcount-($totalcount%$pagesize))/$pagesize+1;
}
return $totalpage;
}
以上就是php分页代码及原理实例分析在全部内容,之前还有在php通过pdo实现mysql数据库简单操作一文中提到过没有细讲,有兴趣的朋友可以看一下,是有关pdo操作mysql数据库的