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页码怎么实现相关推荐

  1. Word2007怎样从随意页開始设置页码 word07页码设置毕业论文

    Word2007怎样从随意页開始设置页码 word07页码设置毕业论文 为了方便解说,我们先如果从第3页開始设置页码. 一.插入页码 插入→页眉和页脚→页码→页面底端→普通数字3 说明:被→分隔的内容 ...

  2. word如何取消封面或者目录下方的页码,页码从正文开始

    @word如何取消封面与目录的页码TOC 页码设置 我们使用word的时候会发现,加入页码的时候,无法从我们想要的页码开始 #具体实施步骤 1.点击布局,点击分隔符,插入分节符 2.然后双击所设置页尾 ...

  3. word页眉/页脚中插入页码及页码总数(自动变化)

    1 问题? 在文章排版时经常遇到需需要在页眉或页脚中设置页码格式,且页码应从正文部分开始,封面.摘要及目录不应该包含页码. 当需要设置页码总数时,若手动设置则十分麻烦,每次页数改变都要重新设置! 2 ...

  4. word中如何设置首页无页码,页码从第二页开始?(前两页页码格式与后文不同)

    需求: 我要从第三页开始插入页码(页码从1开始),前两页无页码. 步骤: 光标放在第2页的末尾,在"布局"中找到"分隔符",在下拉选项中选择"下一页& ...

  5. Word2007如何从任意页开始设置页码 word07页码设置毕业论文

    Word2007如何从任意页开始设置页码 word07页码设置毕业论文 为了方便讲解,我们先假设从第3页开始设置页码. 一.插入页码 插入→页眉和页脚→页码→页面底端→普通数字3 说明:被→分隔的内容 ...

  6. world分节及分节首页分节页码总页码设置方法

    一.正式文档注意点 1.文件属性.版本.日期.状态等确认 2.文档中涉及表格跨页显示时,需要第二页显示表头,如果第一页仅仅显示表头,则该表调整到下一页显示 3.文档需要及时更新目录,打开默认设置为10 ...

  7. 如何为PPT加上页码/总页码

    打开PPT,选中一页,右键查看其版式. 然后进入模板,点击该版式,可以看到右下角有<#>,这个就是页码的标志. 你可以把它放到中间,或者更改它的样式. 也可以直接该为<#>/1 ...

  8. Word页码设置页码从指定页面从1开始

    假设第1和第2页是目录页,我们希望页码从第3页为1开始 ①在第3页的最上方 ②在第3页插入页码 并且设置为起始页码,从1开始后,第三页就变成第一页了 一定不要勾选[链接到前一条页眉] ③如果第1和第2 ...

  9. word文档封面不显示页码双面页码vba宏代码

    Sub 有封面双页码() ' ' 有封面双页码 宏 ' ' Dim oSection As Section For Each oSection In Word.ActiveDocument.Secti ...

最新文章

  1. 用Socket发邮件的代码(可以群发)
  2. threshold 二值化的实现
  3. 360前端星学习笔记-深入CSS
  4. java用毫秒数做日期计算的一个踩坑记录
  5. 机器学习:如何用相关性实现特征选择?
  6. UNITY 打包时提示sdk tools 或 sdk build tools版本低时可以直接点update 按钮进行更新...
  7. 为了OFFER,继续深入学习树和二叉树
  8. 解决IntelliJ IDEA 2019.3.5 启动无反应
  9. C++ cout 输出 16, 8 , 2进制
  10. append生成新变量的时候,没有如预期(It's a feature,not a bug?)
  11. 虚拟接口+tx+linux,Linux使用笔记: 解决Xen虚拟机中VLAN接口不能ping大包的问题
  12. Nuxt.Js爬坑小记
  13. 《数据挖掘概念与技术》读书笔记(一)
  14. Poker Ⅱ 机械键盘使用说明书
  15. 魔百和CM311-1a_YST代工_安卓9_S905L3A_没无线版线刷包(可救砖)
  16. 剑指 Offer II 017. 含有所有字符的最短字符串
  17. 基于Unity引擎利用OpenCV和MediaPipe的面部表情和人体运动捕捉系统
  18. tex插入excel图表_Excel:以编程方式插入图表。
  19. kubernetespod控制器详解上
  20. 姿态角(Euler角):yaw pitch roll

热门文章

  1. idea svn update 时不弹出选择分支的对话框,don't show this dialog in the furture解决方案
  2. Minicom安装和使用和lte调试方法
  3. CPU通用寄存器 eax ebx ecx edx esp ebp esi edi
  4. 验证方法学的发展历程及比较
  5. 前端做大屏显示,缩放比,分辨率怎样适配?
  6. RTX3090 GPU环境配置
  7. 托疫情的“福”,和儿子一起过了个暑假
  8. 盒子拖拽效果,原生js实现
  9. fpga板子怎么和电脑连_FPGA与PC串口通信设计与实现
  10. 基于微信小程序的育教幼教知识学习系统 计算机毕业设计源码