在做ThinkPHP开发时,有时我们要查询数据,并且排列顺序要按照我们设定好的数组先后顺序,怎么操作呢?
ThinkPHP的连贯操作order是支持这种查询的
关键就在于** ->order("field(uid,".implode(',',$uids).")") **,如下图。
$uids=[1,2,3]
$map_support_user=[
'uid'=>['in',$uids],
'status'=>1
];
$list=UserModel::where($map_support_user)->order("field(uid,".implode(',',$uids).")")->field('uid,avatar,nickname')->select()->toArray();