php 按钮选择,php实现分页选择按钮的三种方式

<?php //分页类 class Page{ const PAGE_ALL = 0;//默认使用全部分页内容 const PAGE_STR = 1;// const PAGE_CLI = 2;// const PAGE_SEL = 3;// const PAGE_STR_CLI = 4;// const PAGE_STR_SEL = 5;// const PAGE_CLI_SEL = 6;// /* * 分页方法 * @param1 string $basename,请求的脚本文件 * @param2 int $counts,总记录数 * @param3 int $page,当前页码 * @return string,具有分页点击a标签的字符串 * * 示例:总共多少条记录,每页显示多少条记录,当前是第几页,首页,前一页,后一页,末页 */ public static function show($basename,$counts,$page = 1,$chose = 0){ //计算出总页数 $pagesize = $GLOBALS['config']['admin_goods_pagecounts']; $pageCounts = ceil($counts / $pagesize); //计算上一页和下一页 $prev = ($page == 1) ? $page : ($page - 1); $next = ($page == $pageCounts) ? $page : ($page + 1); //使用定界符来平凑字符串 $str = << 总共有{$counts}条记录,每页显示{$pagesize}条,当前是第{$page}页   首页 上一页 下一页 末页   ENDF; //增加一个类似点击按钮,1,2,3,4,5 //需求:1,2,3...---->1 ... 3,4,5 ...------->1 ... 5,6,7 ... $click = ''; for($i = 1;$i <= $pageCounts;$i++){ if($page > 2){ //1 ... $page,$page+1,$page+2 //当页数大于等于3的时候 //一定要保留第一页 if($i == 1)$click .= "1  ..."; else{ //判断当前页是否为选中页 if($i == $page){ //从当前页开始,显示后三页 $click .= "{$i}  ";//当前页 //后两页,因为可能当前点击的就是末页,那么就不应该再有后面的页数了 $temp = $i + 1; //后一页 if($temp <= $pageCounts){ $click .= "{$temp}  "; $temp = $i + 2; //后两页 if($temp <= $pageCounts){ $click .= "{$temp}  "; } } } } }else{ //1,2,3 ... //点击是前2页 //判断$pageCounts是否有三页 $click .= "1  "; //判断是否有第二页 if($pageCounts >= 2){ $click .= "2  "; //判断是否有第三页 if($pageCounts >= 3){ $click .= "3  "; } } //中断执行 break; } } //追加点 if($page <= $pageCounts - 3){ //如果当前点击的页是后三页中的任意一页,就不需要加上... $click .= '...'; }else{ $click .= ''; } //select下拉框分页 $select = "  "; //循环遍历 for($i = 1;$i <= $pageCounts;$i++){ if($page == $i){ //默认选中当前页 $select .= "{$i}"; }else{ $select .= "{$i}"; } } //完善select $select .= ""; //返回当前拼凑好的分页 //判断用户需求,来进行选择性返回 switch($chose){ case 0: default: return $str . $click . $select; case 1: return $str; case 2: return $click; case 3: return $select; case 4: return $str . $click; case 5: return $str . $select; case 6: return $click . $select; } } }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值