php 页码,php页码怎么实现
php页码怎么实现?
PHP页码显示的实现
效果:
拿去后几乎直接用。pageNow #当前页,pageNumb #总共页码数 两个变量赋值方式改一下就行了。<?php
########################################################################
#页码显示PHP脚本
#ora
#2019-04-22 19:49:57
#########################################################################
#$pageNumb = $arrlen /$contentNumbOnePage ; #总共页码数=内容数/每页内容数。
$pageNumb = 7;
if (is_float($pageNumb)) { #总共页码数 取整。
$pageNumb = (int)$pageNumb + 1;
}elseif (is_integer($pageNumb)) {
$pageNumb = $pageNumb;
}else $pageNumb = 1; #出错,但重新定义总页码数为1,而不是退出。
#$pageNow #当前页
#$_GET['page'] #url传递(请求)的页码。
if (!empty($_GET['page']) && is_integer($_GET['page']/1) ) { #is_integer($_GET['page']/1) ,除1以后才是整数... 此处有问题。待修正。
$pageNow = $page = $_GET['page'] ;
}else {$pageNow = $page = 1;} #没有请求页码,给予初始化为1.
#页码显示
#规则:必有首尾页,当前页前后页码相同且给定。其他页码用...表示。
/*
四种情况。难得解释清楚,感兴趣自己用一串数字掩饰一下。
比如:
1 23 ...777 ; 1 2 34...777 ;12 3 45...777 ; 1...23 4 56...777;1...234_235 <236> 237_238 ...777;
1 23 ...7 ; 1 2 34...7 ; 12 3 45...7 ;123 4 567;
1 23 ...5 ; 1 2 345; 12 3 45;
1 ... 234_235 <236> 237 ; 1 ... 235 236 <237> ;
1 2 <3> 4 ;
*/
#ye ma xian shi.
$jiange=2;#ye ma jian ge.
if (!is_integer($jiange) && $jiange<1){$jiange=2;}# jian ge bu xiao yu 1,qie wei zhengshu.
##########################################下面4个case是方法############################
#case 1
if ($pageNow - $jiange - 1 - 1 > 0 && $pageNumb -$jiange -1 -1 >$pageNow){ # 前面有首页1、$jiange定义的间隔页码、和它本身。
echo " 1 " ;
echo "... ";
for ($num = $pageNow - $jiange ;$num
echo "$num ";
}
echo "$pageNow"; #当前页
for ($num = $pageNow + 1 ; $num<=$pageNow + $jiange ;$num++){
echo "$num ";
}
$num = $pageNow + 1;
echo "... ";
echo " $pageNumb";
}
#case 2
if ($pageNow - $jiange - 1 - 1 <= 0 && $pageNumb -$jiange -1 -1 >$pageNow){ # 到首页的间隔页少于等于定义间隔值。前面的页码全输出。后连续输出间隔页码。
for($i=1;$i<=$pageNow + $jiange ;$i++){
if($i==$pageNow){
echo "$pageNow"; #当前页
}else {echo " $i"; }
}
echo "... ";
echo " $pageNumb";
}
#case 3
if ($pageNow - $jiange - 1 - 1 > 0 && $pageNumb -$jiange -1 -1 <=$pageNow){
echo " 1 " ;
echo "... ";
for ($num = $pageNow - $jiange ;$num
echo "$num ";
}
echo "$pageNow"; #当前页
for ($num = $pageNow + 1 ; $num<=$pageNumb;$num++){
echo "$num ";
}
}
#case 4
if ($pageNow - $jiange - 1 - 1 <= 0 && $pageNumb -$jiange -1 -1 <=$pageNow){ #
for($i=1;$i<=$pageNumb ;$i++){
if($i==$pageNow){
echo "$pageNow"; #当前页
}else {echo " $i"; }
}
#echo "... ";
#echo " $pageNumb";
}
html格式的代码:<?php
########################################################################
#页码显示PHP脚本
#ora
#2019-04-22 19:49:57
#########################################################################
#$pageNumb = $arrlen /$contentNumbOnePage ; #总共页码数=内容数/每页内容数。
$pageNumb = 7;
if (is_float($pageNumb)) { #总共页码数 取整。
$pageNumb = (int)$pageNumb + 1;
}elseif (is_integer($pageNumb)) {
$pageNumb = $pageNumb;
}else $pageNumb = 1; #出错,但重新定义总页码数为1,而不是退出。
#$pageNow #当前页
#$_GET['page'] #url传递(请求)的页码。
if (!empty($_GET['page']) && is_integer($_GET['page']/1) ) { #is_integer($_GET['page']/1) ,除1以后才是整数... 此处有问题。待修正。
$pageNow = $page = $_GET['page'] ;
}else {$pageNow = $page = 1;} #没有请求页码,给予初始化为1.
#页码显示
#规则:必有首尾页,当前页前后页码相同且给定。其他页码用...表示。
/*
四种情况。难得解释清楚,感兴趣自己用一串数字掩饰一下。
比如:
1 23 ...777 ; 1 2 34...777 ;12 3 45...777 ; 1...23 4 56...777;1...234_235 <236> 237_238 ...777;
1 23 ...7 ; 1 2 34...7 ; 12 3 45...7 ;123 4 567;
1 23 ...5 ; 1 2 345; 12 3 45;
1 ... 234_235 <236> 237 ; 1 ... 235 236 <237> ;
1 2 <3> 4 ;
*/
#ye ma xian shi.
$jiange=2;#ye ma jian ge.
if (!is_integer($jiange) && $jiange<1){$jiange=2;}# jian ge bu xiao yu 1,qie wei zhengshu.
#case 1
if ($pageNow - $jiange - 1 - 1 > 0 && $pageNumb -$jiange -1 -1 >$pageNow){ # 前面有首页1、$jiange定义的间隔页码、和它本身。
echo " 1 " ;
echo "... ";
for ($num = $pageNow - $jiange ;$num
echo "$num ";
}
echo "$pageNow"; #当前页
for ($num = $pageNow + 1 ; $num<=$pageNow + $jiange ;$num++){
echo "$num ";
}
$num = $pageNow + 1;
echo "... ";
echo " $pageNumb";
}
#case 2
if ($pageNow - $jiange - 1 - 1 <= 0 && $pageNumb -$jiange -1 -1 >$pageNow){ # 到首页的间隔页少于等于定义间隔值。前面的页码全输出。后连续输出间隔页码。
for($i=1;$i<=$pageNow + $jiange ;$i++){
if($i==$pageNow){
echo "$pageNow"; #当前页
}else {echo " $i"; }
}
echo "... ";
echo " $pageNumb";
}
#case 3
if ($pageNow - $jiange - 1 - 1 > 0 && $pageNumb -$jiange -1 -1 <=$pageNow){
echo " 1 " ;
echo "... ";
for ($num = $pageNow - $jiange ;$num
echo "$num ";
}
echo "$pageNow"; #当前页
for ($num = $pageNow + 1 ; $num<=$pageNumb;$num++){
echo "$num ";
}
}
#case 4
if ($pageNow - $jiange - 1 - 1 <= 0 && $pageNumb -$jiange -1 -1 <=$pageNow){ #
for($i=1;$i<=$pageNumb ;$i++){
if($i==$pageNow){
echo "$pageNow"; #当前页
}else {echo " $i"; }
}
#echo "... ";
#echo " $pageNumb";
}
更多PHP相关知识,请访问PHP教程!
php 页码,php页码怎么实现相关推荐
- Word2007怎样从随意页開始设置页码 word07页码设置毕业论文
Word2007怎样从随意页開始设置页码 word07页码设置毕业论文 为了方便解说,我们先如果从第3页開始设置页码. 一.插入页码 插入→页眉和页脚→页码→页面底端→普通数字3 说明:被→分隔的内容 ...
- word如何取消封面或者目录下方的页码,页码从正文开始
@word如何取消封面与目录的页码TOC 页码设置 我们使用word的时候会发现,加入页码的时候,无法从我们想要的页码开始 #具体实施步骤 1.点击布局,点击分隔符,插入分节符 2.然后双击所设置页尾 ...
- word页眉/页脚中插入页码及页码总数(自动变化)
1 问题? 在文章排版时经常遇到需需要在页眉或页脚中设置页码格式,且页码应从正文部分开始,封面.摘要及目录不应该包含页码. 当需要设置页码总数时,若手动设置则十分麻烦,每次页数改变都要重新设置! 2 ...
- word中如何设置首页无页码,页码从第二页开始?(前两页页码格式与后文不同)
需求: 我要从第三页开始插入页码(页码从1开始),前两页无页码. 步骤: 光标放在第2页的末尾,在"布局"中找到"分隔符",在下拉选项中选择"下一页& ...
- Word2007如何从任意页开始设置页码 word07页码设置毕业论文
Word2007如何从任意页开始设置页码 word07页码设置毕业论文 为了方便讲解,我们先假设从第3页开始设置页码. 一.插入页码 插入→页眉和页脚→页码→页面底端→普通数字3 说明:被→分隔的内容 ...
- world分节及分节首页分节页码总页码设置方法
一.正式文档注意点 1.文件属性.版本.日期.状态等确认 2.文档中涉及表格跨页显示时,需要第二页显示表头,如果第一页仅仅显示表头,则该表调整到下一页显示 3.文档需要及时更新目录,打开默认设置为10 ...
- 如何为PPT加上页码/总页码
打开PPT,选中一页,右键查看其版式. 然后进入模板,点击该版式,可以看到右下角有<#>,这个就是页码的标志. 你可以把它放到中间,或者更改它的样式. 也可以直接该为<#>/1 ...
- Word页码设置页码从指定页面从1开始
假设第1和第2页是目录页,我们希望页码从第3页为1开始 ①在第3页的最上方 ②在第3页插入页码 并且设置为起始页码,从1开始后,第三页就变成第一页了 一定不要勾选[链接到前一条页眉] ③如果第1和第2 ...
- word文档封面不显示页码双面页码vba宏代码
Sub 有封面双页码() ' ' 有封面双页码 宏 ' ' Dim oSection As Section For Each oSection In Word.ActiveDocument.Secti ...
最新文章
- 用Socket发邮件的代码(可以群发)
- threshold 二值化的实现
- 360前端星学习笔记-深入CSS
- java用毫秒数做日期计算的一个踩坑记录
- 机器学习:如何用相关性实现特征选择?
- UNITY 打包时提示sdk tools 或 sdk build tools版本低时可以直接点update 按钮进行更新...
- 为了OFFER,继续深入学习树和二叉树
- 解决IntelliJ IDEA 2019.3.5 启动无反应
- C++ cout 输出 16, 8 , 2进制
- append生成新变量的时候,没有如预期(It's a feature,not a bug?)
- 虚拟接口+tx+linux,Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题
- Nuxt.Js爬坑小记
- 《数据挖掘概念与技术》读书笔记(一)
- Poker Ⅱ 机械键盘使用说明书
- 魔百和CM311-1a_YST代工_安卓9_S905L3A_没无线版线刷包(可救砖)
- 剑指 Offer II 017. 含有所有字符的最短字符串
- 基于Unity引擎利用OpenCV和MediaPipe的面部表情和人体运动捕捉系统
- tex插入excel图表_Excel:以编程方式插入图表。
- kubernetespod控制器详解上
- 姿态角(Euler角):yaw pitch roll
热门文章
- idea svn update 时不弹出选择分支的对话框,don't show this dialog in the furture解决方案
- Minicom安装和使用和lte调试方法
- CPU通用寄存器 eax ebx ecx edx esp ebp esi edi
- 验证方法学的发展历程及比较
- 前端做大屏显示,缩放比,分辨率怎样适配?
- RTX3090 GPU环境配置
- 托疫情的“福”,和儿子一起过了个暑假
- 盒子拖拽效果,原生js实现
- fpga板子怎么和电脑连_FPGA与PC串口通信设计与实现
- 基于微信小程序的育教幼教知识学习系统 计算机毕业设计源码