tp5.0分页样式调控
基础的分页调用
/**
* 控制器部分代码
*/
//实例化模型
$areasModel=new Areas();
//分页数据集
$listarea=$areasModel->paginate($page);
//分页显示输出
$page=$listarea->render();
//模板赋值
$this->assign('listarea',$listarea);
$this->assign('page', $page);
/**
* 模板页面部分代码
*/
{$page}//分页输出
{$listarea->total()}//数据总数
{$listarea->lastPage()}//总页数
{$listarea->currentPage()}//当前页
分页类修改,写了三个样式;
public $rollPage=;//分页栏每页显示的页数
public $showPage=;//总页数超过多少条时显示的首页末页
/**
* 分页样式一:首页末页不管何时都显示
*
* 分页样式二:前n页时不显示首页,后n页时不显示末页;n=分页栏数/2(向下取整)
*/
//样式1和样式2核心代码
/**
* 页码按钮
* @return string
*/
protected function getLinks()
{
if ($this->simple)
return '';
$block = [
'first' => null,
'slider' => null,
'last' => null
];
$rollPage = $this->rollPage;//分页栏每页显示的页数
$nowPage = floor($rollPage/);//计算分页临时变量 if($this->lastPage <= $rollPage){
$block['first'] = $this->getUrlRange(, $this->lastPage);
}else if($this->currentPage <= $nowPage){
$block['first'] = $this->getUrlRange(, $rollPage);
}else if($this->currentPage >= ($this->lastPage - $nowPage)){
$block['first'] = $this->getUrlRange($this->lastPage - $rollPage+, $this->lastPage);
}else{
$block['first'] = $this->getUrlRange($this->currentPage - $nowPage, $this->currentPage + $nowPage);
}
$html = '';
if (is_array($block['first'])) {
$html .= $this->getUrlLinks($block['first']);
}
return $html;
}
/**
* 分页样式三
* 按照段分页,具体的效果可以自己下载代码
*
* 例1:1-5,4-8,7-11,...
* 在第一段时:点击5时跳到下一段
* 在第二段时:点击8时跳到下一段,点击4时回到上一段
*
* 例2:1-7,6-12,11-17,...
* 在第二段时:点击12时跳到下一段点击6时回到上一段
* 在第三段时:点击17时跳到下一段,点击11时回到上一段
*
*/
//核心代码
/**
* 页码按钮
* @return string
*/
protected function getLinks()
{
if ($this->simple)
return '';
$block = [
'first' => null,
'slider' => null,
'last' => null
];
$rollPage = $this->rollPage;//分页栏每页显示的页数
$nowPage = floor($rollPage/);//计算分页临时变量 if($this->lastPage <= $rollPage){
$block['first'] = $this->getUrlRange(, $this->lastPage);
}else if($this->currentPage== || $this->currentPage<$rollPage){
$block['first'] = $this->getUrlRange(, $rollPage);
}else{
$n=floor(($this->currentPage+($rollPage-))/($rollPage-));
$start=$n*($rollPage-)-($rollPage-);
$end=$start+$rollPage-;
$end=$end>$this->lastPage ? $this->lastPage : $end;
$block['first'] = $this->getUrlRange($start,$end);
}
$html = '';
if (is_array($block['first'])) {
$html .= $this->getUrlLinks($block['first']);
}
return $html;
}
样式一图:

样式二图:

样式三图:

tp5.0分页样式调控的更多相关文章
- TP5之自定义分页样式
分页样式为 在extend\目录下创建page目录,在page目录下创建Page.php文件,将以下代码放入文件中. <?php namespace page; use think\Pagina ...
- TP5.1 分页CSS样式(转载)
效果如图: 1.在extend\目录下创建page目录,在page目录中创建Page.php文件,将以下代码放入文件中 <?php namespace page; use think\Pagin ...
- php分页类代码带分页样式效果(转)
php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...
- bootstrap 分页样式代码
bootstrap 分页样式代码,废话不多说,直接上源码 <!DOCTYPE html> <html> <head> <title>Bootstrap ...
- 帝国cms 列表页分页样式修改美化【2】
上一篇(帝国cms 列表页分页样式修改美化[1])中我们已经对分页说了一个大概,下面我们就自己动手弄一个分页把: 第一步:进入帝国cms后台,点击系统设置->系统参数设置->信息设置:里面 ...
- 帝国cms 列表页分页样式修改美化【1】
[1]自己修改帝国cms默认的分页样式(css),这样做的好处是你不用去改动帝国的核心文件,方便以后升级. [2]自己动手去修改帝国的分页(php+css),帝国的分页在e>class>下 ...
- 修改DeDe标签Pagelist分页样式
我们在用dede仿站的时候,调用文章列表页的分页时,我们会用到: {dede:pagelist listitem=”info,index,end,pre,next,pageno” listsize=” ...
- bootstrap导航条+模态对话框+分页样式
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- 修改DeDe标签Pagelist分页样式,自定义分页样式
我们在用dede仿站的时候,调用文章列表页的分页时,我们会用到: {dede:pagelist listitem="info,index,end,pre,next,pageno" ...
随机推荐
- 九度oj 题目1066:字符串排序
题目1066:字符串排序 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:6487 解决:2670 题目描述: 输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到 ...
- Luogu P1257 平面上的最接近点对 暴力
这道题数据不大 两点距离用勾股定理求 #include<iostream> #include<cmath> using namespace std; struct node{ ...
- Spring Cloud ZooKeeper集成Feign的坑2,服务调用了一次后第二次调用就变成了500,错误:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is com.n
错误如下: 2017-09-19 15:05:24.659 INFO 9986 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refre ...
- 微信前端js sdk以外的开发
此时页面中就会出现刚才我画红圈部分的工具条. 这个工具条再加上上面的标题栏工具条. 极大的降低了可视区域的面积. 是否能将它去掉呢?答案是能够的.增加以下代码就能够去掉微信中以下的工具条: docum ...
- [WebGL入门]二十一,从平行光源发出的光
注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明.我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语.假设翻译有误,欢迎大家指 ...
- HDU 2461 线段树扫描线
给出N个矩形,M次询问 每次询问给出R个.问这R个矩形围成的面积 经典扫面线求面积并,对每次询问的R个点离散化一下 #include "stdio.h" #include &quo ...
- s:actionmessage页面样式失效
1, s:actionmessage页面样式失效: 2,解决方式: 将样式直接写入s:actionmessage标签中:<span><s:actionmessage cssSt ...
- TeX中的引号
#include <stdio.h> #include <math.h> // 算法竞赛的目标是编程对任意输入均得到正确的结果. // 请先独立完成,如果有困难可以翻阅本书代码 ...
- go语言笔记——是c开发的 lex yacc进行词法和语法分析,go不支持函数和运算符重载,不支持类型继承,也不支持断言,还有泛型
从 Go 1.0.3 版本开始,不再使用 8g,8l 之类的指令进行程序的构建,取而代之的是统一的 go build 和 go install 等命令,而这些指令会自动调用相关的编译器或链接器. 如果 ...
- cmd 命令操纵文件管理器、创建(删除)多级文件夹
命令行打开文件夹窗口的六种方法 1. 使用 start 命令 # 打开指定文件夹 > start 路径 # 打开当前文件夹 > start . # 打开含空格文件夹 > start ...