本人使用的版本为 TP5.1.41
1、直接使用 whereIn 进行查询
// TP5.1查询语法如下
$sql = db('user')->whereIn('id', [1,2,3])->select();
// SQL语句如下
SELECT * FROM `oa_user` WHERE `id` IN (1,2,3)
2、直接使用 where 进行查询
// TP5.1查询语法如下
$sql = db('user')->where(['id' => [1,2,3]])->select();
// SQL语句如下
SELECT * FROM `user` WHERE `id` IN (1,2,3)
3、使用 db 库下的 Where 类进行查询
// TP5.1查询语法如下
use think\db\Where; // 引入db库下的Where类
$where = new Where(); // new一个where对象
$where['id'] = ['in', [1,2,3]];
$sql = db('user')->where($where)->select();
// SQL语句如下
SELECT * FROM `user` WHERE `id` IN (1,2,3)
该方法同样适用于联合查询,如下所示:
// TP5.1查询语法如下
use think\db; // 引入db类
use think\db\Where; // 引入Where类
$where = new Where(); // new一个where对象
$where['id'] = ['in', [1,2,3]];
$where['status'] = ['neq', 0];
$where[] = ['exp', Db::raw("FIND_IN_SET(6, u_ids)")];
$sql = db('user')->where($where)->select();
// SQL语句如下
SELECT * FROM `user` WHERE `id` IN (1,2,3) AND `status` <> 0 AND ( FIND_IN_SET(6, u_ids) )
以上是我目前整理的三种方法,日常开发应该够用,欢迎大神指点一二,不胜荣幸!