做项目有时候,需要自己处理组合数据,不是直接从表中提取出来的。不能按照手册得方法分页显示数据。这时候就得想办法,正好看到他人的方法。地址为:http://www.thinkphp.cn/code/276.html
function array_page($array,$rows){
import("ORG.Util.Page"); //导入分页类
$count=count($array);
$Page=new Page($count,$rows);
$list=array_slice($array,$Page->firstRow,$Page->listRows);
return $list;
}
根据自己的情况使用,我的数据处理
$uarr=array();
foreach($ids as $v){;
$map['userid']=$v['id'];
$uinfo=$u->where($map)->select();//存放下级渠道信息
$uarr[]=$uinfo[0];
}
$subuser=array_filter($uarr);
$count=count($subuser);
$Page= new \Think\Page($count,1);// 实例化分页类 传入总记录数和每页显示的记录数
$show= $Page->show();// 分页显示输出
$list=array_slice($subuser,$Page->firstRow,$Page->listRows);
$this->assign('page',$show);// 赋值分页输出
$this->assign('subuser',$list);//去除数组中的空值,然后传到模板中
关键的就是这几行
$subuser=array_filter($uarr);
$count=count($subuser);
$Page= new \Think\Page($count,1);// 实例化分页类 传入总记录数和每页显示的记录数
$show= $Page->show();// 分页显示输出
$list=array_slice($subuser,$Page->firstRow,$Page->listRows);
出粗的话要注意语句的先后顺序。