你可以使用where和whereOr结合起来实现这样的查询条件。下面是一个示例代码:
- namespace app\index\controller;
- use app\index\model\User;
- use think\Controller;
- class UserController extends Controller
- {
- public function index()
- {
- // 创建用户模型对象
- $userModel = new User();
- // 使用 where 和 whereOr 方法构建查询条件
- $result = $userModel->where('status', 1)
- ->whereOr(function($query) {
- $query->where('status', 0)
- ->where('area', 1);
- })
- ->select();
- // 处理查询结果
- foreach ($result as $user) {
- // 处理每个用户数据
- // 这里只是简单输出,你可以根据需求进行其他处理
- dump($user->getData());
- }
- }
- }
复制代码在这个示例中,我们使用了where方法指定了一个条件(status为1),然后使用了whereOr方法来指定一个OR条件组。whereOr方法接受一个闭包参数,里面可以使用where方法来定义OR条件组中的条件。在这个闭包中,我们设置了两个条件:status为0和area为1。 这样构建的查询条件即为status为1或者status为0且area为1。
|