PHP后端方法实现网页的分页下标生成代码
这篇文章主要介绍了关于PHP后端方法实现网页的分页下标生成代码,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
网页的分页选择效果直接影响用户的使用体验。类似功能的方法有很多,我在这里写的方法主要是的优势在于前后端分离,可以自己定义长度和分页的行数
测试图例:
效果图:
实现代码:
/** * * @param $page 页码(1至正无穷) * @param $num 数据中多上行为一页 * @param $rows 数据的总行数 * @param $length 下标的最大长度 * @return array */ public function PageDate($page, $num , $rows , $length){ //初始化数据 $MaxPage = 0; //最大页码 $MinPage = 0; //最小页码 $ServerPage = 0; //下拉框中显示的页码 $PageData = array(); //全部的页码集合(用户下拉框选择) $PageShowData = array(); //用于显示下标的页码集合 $page = intval($page); if($rows == 0){ return $data = array( 'page' => $page, 'MaxPage' => $MaxPage, 'MinPage' => $MinPage, 'ServerPage' => $ServerPage, 'PageData' => $PageData, 'PageShowData' => $PageShowData ); } //得到最大分页和最小分页 $MaxPage = intval($rows / $num); $double = $rows % $num; if($double > 0.000000001) { $MaxPage += 1; } $MinPage = 1; $ServerPage = 1; //得到页码的全部项目 for($i = 1; $i <= $MaxPage; $i++ ){ $PageData[$i] = $i; } //对页码进行正确性改正 if($page < $MinPage){ $page = 1; } if($page > $MaxPage){ $page = 1; } /*生成显示的页码标签*/ //生成左侧的代码快 if($page == $MinPage){ $PageShowData[1] = $page; } if($page > $MinPage){ $PageShowData[1] = $MinPage; // $PageShowData[2] = $page - 1; // << $PageShowData[2] = '<<'; // << if($page -2 > $MinPage ){ $PageShowData[3] = $page - 2; $PageShowData[4] = $page - 1; }elseif($page -2 == $MinPage){ $PageShowData[3] = $page - 1; } //确定选中的页码代码快 $PageShowData[count($PageShowData) + 1] = $page; } $COUNT = count($PageShowData) + 1; //生成右侧的代码块 if($page == $MaxPage){ return $data = array( 'page' => $page, 'MaxPage' => $MaxPage, 'MinPage' => $MinPage, 'ServerPage' => $ServerPage, 'PageData' => $PageData, 'PageShowData' => $PageShowData ); } if($page < $MaxPage) { if($MaxPage - $page >= 2){ $j = 1; for($i = $COUNT; $i <= $length ; $i++){ $PageShowData[$i] = $page + $j; $j ++; if($PageShowData[$i] == $MaxPage -1){ break; } } } $COUNT = count($PageShowData) + 1; // $PageShowData[$COUNT] = $page + 1; //>> $PageShowData[$COUNT] = '>>'; $PageShowData[$COUNT + 1] = $MaxPage; //得到选中的参数 $ServerPage = $PageShowData[$COUNT-1] + 1; if($ServerPage > $MaxPage){ $ServerPage = 1; } return $data = array( 'page' => $page, 'MaxPage' => $MaxPage, 'MinPage' => $MinPage, 'ServerPage' => $ServerPage, 'PageData' => $PageData, 'PageShowData' => $PageShowData ); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
以上是PHP后端方法实现网页的分页下标生成代码的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

PHP日志记录对于监视和调试Web应用程序以及捕获关键事件,错误和运行时行为至关重要。它为系统性能提供了宝贵的见解,有助于识别问题并支持更快的故障排除

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸
