文档章节

在服务端解决分页展示页码

kongjun
 kongjun
发布于 2015/06/04 15:09
字数 165
阅读 11
收藏 0
function getAutoPageArray($page,$pagelen){
	$pagecode = "";
	//页码计算范围
	$init = 1;
	$max = $page->totalPage;
	$pagelen = ($pagelen%2)?$pagelen:$pagelen+1;//页码个数
	$pageoffset = ($pagelen-1)/2;//页码个数左右偏移量

	//生成html
	//分页数大于页码个数时可以偏移
	if($page->totalPage > $pagelen)
	{
		//如果当前页小于等于左偏移
		if($page->currentPage<=$pageoffset)
		{
			$init=1;
			$max=$pagelen;
		}
		else
		{
			//如果当前页大于左偏移
			//如果当前页码右偏移超出最大分页数
			if($page->currentPage+$pageoffset>=$page->totalPage+1)
			{
				$init = $page->totalPage-$pagelen+1;
			}
			else
			{
				//左右偏移都存在时的计算
				$init = $page->currentPage-$pageoffset;
				$max = $page->currentPage+$pageoffset;

			}
		}
	}


	$array = array();
	for($i=$init;$i<=$max;$i++){
		$array[] = sprintf("%d",$i);
	}

	return $array;
}

© 著作权归作者所有

共有 人打赏支持
kongjun
粉丝 8
博文 98
码字总数 40811
作品 0
杭州
程序员
私信 提问
如何使用angularjs开发表格的分页功能?

1.分页功能怎么做 数据量大于预计展示个数时,分段展示数据。 2.两个重要参数:pageSize,pageNo 常量pageSize,变量pageNo。 3.选择分页方式 ①前端缓存所有数据,根据pageNo变化 ②node端开...

趁你还年轻233
05/14
0
0
html页面在mako页面获取到的是一串很长的字符串,而不是需要的页码数如何解决?

遇到的问题:我看网上html页面大家通过page2.nextpagenumber和page2.preivouspagenumber获取上一页和下一页的页码,而我在mako页面获取到的是一串很长的字符串,而不是需要的页码数,我的解决...

pan_haufei的博客
2017/12/14
0
0
我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)

OData协议、多么牛B的技术、 传统的分页写习惯了,最近项目中,用到了 Asp.net WebAPI 2.0来做数据交互接口、至于为什么要使用WebAPI,我想只要是对OData协议有了解的朋友。只要说到WebAPI都...

点儿都不扯
2015/05/14
0
0
轻量级UI组件--Magic

Magic是用JavaScript脚本开发的轻量级UI组件,具有性能高效、代码量小、支持多种初始化方式等方面的优势,Web前端开发者可以使 用Magic快速搭建前端功能比较复杂的网站。Magic的每个组件都有...

滔哥
2014/10/16
15.9K
8
PHP+jQuery实现Ajax分页效果:jPaginate插件的应用

jPaginate是基于jQuery的动感滚动分页插件,它的表现形式是像分页的按钮一样,非常有意思的是这些按钮却可以滚动,可以通过单击或鼠标滑向点两侧的小箭头来控制按钮的前后滚动。 调用jPagina...

mickelfeng
2013/12/28
0
2

没有更多内容

加载失败,请刷新页面

加载更多

EOS官方钱包keosd

EOS官方钱包的名称是keosd,它负责管理你的私钥,并且帮你进行交易的签名。 不过不幸的是,keosd钱包对普通用户并不友好,它是一个命令行程序,目前还没有像以太坊的mist那样的图形化界面,而...

汇智网教程
36分钟前
1
0
ArrayList的实现原理以及实现线程安全

一、ArrayList概述 ArrayList是基于数组实现的,是一个动态的数字,可以自动扩容。 ArrayList不是线程安全的,效率比较高,只能用于单线程的环境中,在多线程环境中可以使用Collections.syn...

一看就喷亏的小猿
52分钟前
2
0
Netty 备录 (一)

入职新公司不久,修修补补1个月的bug,来了点实战性的技术---基于netty即时通信 还好之前对socket有所使用及了解,入手netty应该不是很难吧,好吧,的确有点难,刚看这玩意的时候,可能都不知道哪里...

_大侠__
昨天
5
0
Django简单介绍和用户访问流程

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。 Django是一个开放源代码的Web应用框架,由Python写成。 Django遵守BSD版权,初...

枫叶云
昨天
8
0
Spring Cloud Stream消费失败后的处理策略(四):重新入队(RabbitMQ)

应用场景 之前我们已经通过《Spring Cloud Stream消费失败后的处理策略(一):自动重试》一文介绍了Spring Cloud Stream默认的消息重试功能。本文将介绍RabbitMQ的binder提供的另外一种重试...

程序猿DD
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部