thinkphp5 链式操作order用法

小周 2020-10-05

order方法属于模型的连贯操作方法之一,用于对操作的结果排序。

用法如下:

Db::table(‘think_user‘)->where(‘status=1‘)->order(‘id desc‘)->limit(5)->select();
注意:连贯操作方法没有顺序,可以在select方法调用之前随便改变调用顺序。

支持对多个字段的排序,例如:

Db::table(‘think_user‘)->where(‘status=www.dinghe866.com‘)->order(‘id desc,status‘)->limit(5)->select();
如果没有指定desc或者asc排序规则的话,默认为asc。

如果你的字段和mysql关键字有冲突,那么建议采用数组方式调用,例如:

Db::table(‘think_user‘)->where(‘status=1‘)->order([‘order‘,‘id‘=>‘desc‘])->limit(5)->select();
V5.0.17+版本开始,当你的order排序中使用了SQL函数的时候,请使用orderRaw方法替代order,例如:

Db::table(‘think_user‘)->where(‘status=1‘)->orderRaw(‘rand()‘)->limit(5)->select();

相关推荐