文档章节

OpenSNS分页page过程

钟良
 钟良
发布于 2016/05/31 10:52
字数 719
阅读 32
收藏 0

分页前的所有数据$relatedWeibasInfos

$relatedWeibasInfo=getPage($relatedWeibasInfos,$limit,$p);

 

 

 

Common/common.php里配置相应函数这是自己添加的接口,原来也是有的,可以看一下

function getPage($data,$limit,$p=1){

    import('ORG.Util.Page'); // 导入分页类

    $Page = new Page(count($data), $limit);

    $show = $Page->show(); // 分页显示输出

    $result['count'] = count($data);

    $result['totalPages'] = $Page->totalPages;

    $result['totalRows'] = $Page->totalRows;

    //$result['nowPage']=$page->nowPage;//这是原来获取当前页的方法,现在被我改成了如下if里的内容

    if($p>$result['totalPages']){

        $result['nowPage'] =1;

    }else{

        $result['nowPage']=$p;

    }

    $result['html'] = $show;

    $result['data'] = array_slice($data, ($result['nowPage']-1)*$limit, $limit,true);//page类里面起始项为$Page->firstRow

    return $result;

}

说明 ¶

array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]] )

array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。

参数 ¶

  • array

  • 输入的数组。

  • offset

  • 如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。

  • length

  • 如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。

  • preserve_keys

  • 注意 array_slice() 默认会重新排序并重置数组的数字索引。你可以通过将 preserve_keys 设为 TRUE 来改变此行为。

返回值 ¶

返回其中一段。

 

 

 

 

array_slice()这个函数截取数组的一部分内容,在这里就是截取某一页的内容。如下例子中,本来$data中有从1~8,总共8项,经过该函数截取第二页,即($result['nowPage']==2),从第($result['nowPage']-1)*$limit==3开始,总共截取$limit==3项,得到结果就是从3~5项,如下:

//$result内容如下

 
array (size=6)
  'count' => int 8
  'totalPages' => float 3
  'totalRows' => int 8
  'nowPage' => int 2
  'html' => string ' <a class='current'>1</a><a href='/diaoyumi/index.php?app=public&mod=Register&act=step4&p=2'>2</a><a href='/diaoyumi/index.php?app=public&mod=Register&act=step4&p=2' class='next'>涓嬩竴椤�</a>' (length=192)
  'data' =>array (size=3)
      3 =>array (size=23)
          'weiba_id' => string '18' (length=2)
          'cid' => string '1' (length=1)
          'weiba_name' => string '绗笁鏂硅惃鑺�' (length=15)
          'uid' => string '1' (length=1)
          'ctime' => string '1394521633' (length=10)
          'logo' => string '113' (length=3)
          'intro' => string '绗笁涓洖澶嶇殑鍗庝笢甯堣寖鏇村ソ鐨勮娉�' (length=45)
          'who_can_post' => string '0' (length=1)
          'who_can_reply' => string '0' (length=1)
          'follower_count' => string '3' (length=1)
          ...
      4 =>array (size=23)
          'weiba_id' => string '19' (length=2)
          'cid' => string '1' (length=1)
          'weiba_name' => string '璁藉痉璇靛姛澹ぇ澶�' (length=21)
          'uid' => string '1' (length=1)
          'ctime' => string '1394523034' (length=10)
          'logo' => string '114' (length=3)
          'intro' => string '浣嗘槸鍙嶅鎾掍紣鏄殑' (length=24)
          'who_can_post' => string '0' (length=1)
          'who_can_reply' => string '0' (length=1)
          ...
      5 =>array (size=23)
          'weiba_id' => string '16' (length=2)
          'cid' => string '1' (length=1)
          'weiba_name' => string 'zzl' (length=3)
          'uid' => string '1' (length=1)
          'ctime' => string '1394521527' (length=10)
          'logo' => string '111' (length=3)
          'intro' => string '绗笁鏂硅惃鑺�' (length=15)
          'who_can_post' => string '0' (length=1)
          'who_can_reply' => string '0' (length=1)
          ...

© 著作权归作者所有

上一篇: OpenSNS缓存机制
下一篇: PHP array操作函数
钟良
粉丝 8
博文 97
码字总数 32920
作品 0
嘉兴
CTO(技术副总裁)
私信 提问
OpenSNS开放授权,为ThinkPHP开源项目提供助力

联网行业正处于逐渐加速的发展中,对优秀开源项目的需求也与日俱增。对于互联网行业的从业者来说,优秀开源项目的成功,离不开活跃的开源社区。作为一家致力于推动互联网行业发展的企业,想天...

小码云php
2018/03/13
0
0
智果开源版 1.9.0 发布,更改图文商品阅读模式

智果内容付费系统1.9.0版本正式发布啦! 事不宜迟,一起来看看这次更新的内容吧! 1.9.0更新内容: 1.图文商品的阅读模式更改:取消分页,图文笔记去除分页逻辑 2.修复安全漏洞 更新图赏: ...

想天软件奕潇
2018/12/13
1K
1
OpenSNS开源社区将开放授权给优秀开源项目使用

OpenSNS开源社区百家计划招募计划书 ●Part1.百家计划● 互联网行业的发展离不开优秀的开源项目,而优秀的开源项目的成功离不开活跃的开源社区。想天科技是一家致力于推动互联网行业发展的企...

想天软件奕潇
2018/02/02
2
0
OpenSNS 轻社交(原 ThinkOX) 1.6.0 新版发布公告

ThinkOX正式更名为OpenSNS,意思是基于OpenCenter的社交程序。 OpenCenter系OpenSNS开发团队2015年的新产品。是一款永久免费基于Apache2.0协议的开源用户中心产品。基于OpenSNS的社交实践,优...

想天软件奕潇
2015/01/28
5.6K
6
智果内容付费系统 1.2.0RC 版发布,支持会员、问答

感谢每一位关注以及支持 智果内容付费系统 发展的朋友。 代码已经更新至git.oschina.net 本次版本为智果的第4个版本,也是我们的正式版之前的最后一个版本RC版。 目前商业版已经可以通过直接...

想天软件奕潇
2017/09/29
375
1

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
6
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
8
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
6
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部