请选择 进入手机版 | 继续访问电脑版

SpeedPHP框架

 找回密码
 注册成为新用户

QQ登录

只需一步,快速开始

查看: 5213|回复: 0

[API参考] spPager

[复制链接]
发表于 2012-8-6 20:20:36 | 显示全部楼层 |阅读模式
数据分页类,主要提供spModel的继承类在使用findAll方法时返回分页效果的数据。
成员变量

private
  • $model_obj -- 模型对象
  • $pageData -- 页面数据
  • $input_args -- 调用时输入的参数


成员函数


public
  • __input -- 函数式使用模型辅助类的输入函数
  • __call -- 魔术函数,支持多重函数式使用类的方法
  • getPager -- 获取分页数据

private
  • runpager -- 生成分页数据



位置

  • spPager类位于 SP_PATH/Core/spModel.php

详细__input

函数式使用模型辅助类的输入函数。

object __input( & spModel object, array array)

__input() 是spModel的模型辅助类在使用函数式方法时的标准输入接口。

具体的调用模式:spClass("UserDataModel")->spPager()->findAll();


本成员函数将在spModel辅助类以及spController辅助类中是经常使用到的。

__call

魔术函数,支持多重函数式使用类的方法。

mixed __call(string function_name, array param_arr)

__call()可以让spPager类支持更广泛的用途,如加入spLinker等关联的操作同时具备分页功能。

getPager

获取分页数据。

array getPager(void)

在分页程序中使用了spPager()->findAll()后,程序可以通过spPager()->getPager()来获取分页数据。

getPager()返回数组含义如下:

  • total_count -- 数据总记录数
  • pager_size -- 每页多少条记录
  • total_page -- 总页数
  • first_page -- 第一页的页码
  • prev_page -- 上一页的页码
  • next_page -- 下一页的页码
  • last_page -- 最后一页的页码
  • all_pages -- 包括全部页码的数组
例子:

  1. $guestbook = spClass("guestbook");
  2. $guestbook->spPager($this->spArgs('page', 1), 5)->findAll()
  3. dump($guestbook->spPager()->getPager());
复制代码
runpager

私有函数,生成分页数据

mixed runpager(string function_name, array param_arr)

runpager() 将构造分页的SQL函数传送到spModel继承类中执行,返回执行结果,同时计算分页数据保存到私有变量$pageData中,以便可以使用方法getPager()获取分页数据。





您需要登录后才可以回帖 登录 | 注册成为新用户

本版积分规则

手机浏览|简版|中文PHP框架|开源协议|SpeedPHP.com ( 粤ICP备08008671号

GMT+8, 2020-2-19 21:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表