tp5 paginate类可以调用collection类的方法

来源:互联网 发布:极限运动知乎 编辑:程序博客网 时间:2024/06/05 19:01

TP5的分页 ->paginate();生成的是paginate类

当调用Query对象的paginate()方法时,返回的是Paginator对象,但是可以通过Paginator对象调用Collection对象的方法,举个例子:获取house表的数据并且打乱数据的顺序

$list = model('XXX')-> where)()->paginate();

$list ->shuffle();

shuffle()方法是Collection对象的方法,Paginator对象能调用的原因是因为Paginator对象有__call方法:

public function __call($name,$arguments)

{

return call_user_func_array([$this->getCollection,$name],$arguments);

}

在对象中调用一个不可访问方法时,__call()会被调用。

阅读全文
0 0
原创粉丝点击