基础的分页调用

    /**
* 控制器部分代码
*/
//实例化模型
$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分页样式调控的更多相关文章

  1. TP5之自定义分页样式

    分页样式为 在extend\目录下创建page目录,在page目录下创建Page.php文件,将以下代码放入文件中. <?php namespace page; use think\Pagina ...

  2. TP5.1 分页CSS样式(转载)

    效果如图: 1.在extend\目录下创建page目录,在page目录中创建Page.php文件,将以下代码放入文件中 <?php namespace page; use think\Pagin ...

  3. php分页类代码带分页样式效果(转)

    php分页类代码,有漂亮的分页样式风格 时间:2016-03-16 09:16:03来源:网络 导读:不错的php分页类代码,将类文件与分页样式嵌入,实现php查询结果的精美分页,对研究php分页原理 ...

  4. bootstrap 分页样式代码

    bootstrap 分页样式代码,废话不多说,直接上源码 <!DOCTYPE html> <html> <head> <title>Bootstrap ...

  5. 帝国cms 列表页分页样式修改美化【2】

    上一篇(帝国cms 列表页分页样式修改美化[1])中我们已经对分页说了一个大概,下面我们就自己动手弄一个分页把: 第一步:进入帝国cms后台,点击系统设置->系统参数设置->信息设置:里面 ...

  6. 帝国cms 列表页分页样式修改美化【1】

    [1]自己修改帝国cms默认的分页样式(css),这样做的好处是你不用去改动帝国的核心文件,方便以后升级. [2]自己动手去修改帝国的分页(php+css),帝国的分页在e>class>下 ...

  7. 修改DeDe标签Pagelist分页样式

    我们在用dede仿站的时候,调用文章列表页的分页时,我们会用到: {dede:pagelist listitem=”info,index,end,pre,next,pageno” listsize=” ...

  8. bootstrap导航条+模态对话框+分页样式

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. 修改DeDe标签Pagelist分页样式,自定义分页样式

    我们在用dede仿站的时候,调用文章列表页的分页时,我们会用到: {dede:pagelist listitem="info,index,end,pre,next,pageno" ...

随机推荐

  1. 页面中插入视频的方法---video/embed/iframe总结

    1. video标签 当前主流的方法当然是HTML5中的video标签了,但是 当前,video 元素只支持三种视频格式: Ogg = 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg ...

  2. [luoguP1507] NASA的食物计划(DP)

    传送门 二位费用背包 ——代码 #include <cstdio> #include <iostream> int n, maxv, maxw; ][]; inline int ...

  3. 转载 - JSONObject简介

    出处: http://www.cnblogs.com/java-pan/archive/2012/04/07/JSONObject.html JSONObject简介   本节摘要:之前对JSON做了 ...

  4. vue.js组件之间的通讯-----父亲向儿子传递数据,儿子接收父亲的数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. [bzoj4987]Tree_树形dp

    Tree bzoj-4987 题目大意:给定一颗n个点的有边权的树,选出k个点,使得:$\sum\limits_{i=1}^{k-1}dis_idis_j$最小. 注释:$1\le n\le 3000 ...

  6. Linux的基本配置

    安装: vmvare .centos .SecureCRTPortable(免装版) 软件地址:http://pan.baidu.com/s/1eSBqegq 密码:p4ck 3.开始配置 1打开vm ...

  7. OSX: node中安装zeromq

    1. brew install pkg-config2. brew install zmq3. export PKG_CONFIG_PATH="/usr/local/lib/pkgconfi ...

  8. What are Unix swap (.swp) files?

    原文: http://www.networkworld.com/article/2931534/it-management/what-are-unix-swap-swp-files.html ---- ...

  9. 苹果iOS手机后门的”诊断功能论“不攻自破

    7月23日.苹果公司公布公告,题为"iOS:About diagnostic capabilities"("iOS:关于诊断功能").当中声称:iOS offe ...

  10. GPU 编程入门到精通(三)之 第一个 GPU 程序

    博主因为工作其中的须要.開始学习 GPU 上面的编程,主要涉及到的是基于 GPU 的深度学习方面的知识,鉴于之前没有接触过 GPU 编程,因此在这里特地学习一下 GPU 上面的编程.有志同道合的小伙伴 ...