php自定义分页
最终效果:
css 样式
/*pages*/ .pages{ box-sizing:content-box; display: inline-block; border-top: 1px solid #e6e6e6; border-bottom: 1px solid #e6e6e6; border-left: 1px solid #e6e6e6; } .pages a,.pages .curr{ border-right: 1px solid #e6e6e6; display: inline-block; text-align: center; padding: 2px 10px; float: left; } .pages .curr{ background-color: #009688; color: #fff; cursor: not-allowed } .pages .disable{ cursor: not-allowed; }
php代码(作为公共函数使用,作为类使用也可以)
/** * 分页html * @param int $curPage 当前页 * @param int $totalPage 总页数 * @param int $url 地址+传递参数 * @return string * */ function pages_html($curPage,$totalPage,$url=''){ $string =""; $prev = $curPage-1; $next = $curPage+1; if($curPage-1<1){ $prev = 1; $string .= "<a href='javascript:void(0)' class='prev disable'>上一页</a>"; }else{ $string .= "<a href='{$url}&page={$prev}' class='prev'>上一页</a>"; } for($i=1;$i<=$totalPage;$i++){ if($i==$curPage){ // 当前页 $string .= "<a href='javascript:void(0)' class='curr'>$i</a>"; }else{ $string .= "<a href='{$url}&page={$i}'>$i</a>"; } } if($next-1>=$totalPage){ $next = $totalPage; $string .= "<a href='javascript:void(0)' class='next disable'>下一页</a>"; }else{ $string .= "<a href='{$url}&page={$next}' class='next'>下一页</a>"; } return $string; }
php调用:
$assign['pages'] = pages_html($assign['curPage'],$assign['totalPage'],url('purchase/index')); // url传参
return $this->view('',$assign);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架