Php 有人能帮我把这个sql查询转换成laravel db查询吗?

Php 有人能帮我把这个sql查询转换成laravel db查询吗?,php,sql,laravel,Php,Sql,Laravel,我脑子里有一个sql查询,我想在我的项目中使用它,但我不知道在laravel中该查询的等价物是什么 SELECT * FROM chat WHERE (id_participant1 = 1 OR id_participant2 = 1) AND (id_participant1 = 2 OR id_participant2 = 2) 括号中的查询需要闭包,所以它看起来是这样的: DB::table('chat') ->where(function($query) {

我脑子里有一个sql查询,我想在我的项目中使用它,但我不知道在laravel中该查询的等价物是什么

SELECT * 
FROM chat 
WHERE (id_participant1 = 1 OR id_participant2 = 1)
  AND (id_participant1 = 2 OR id_participant2 = 2)

括号中的查询需要闭包,所以它看起来是这样的:

DB::table('chat')
   ->where(function($query) {
        $query->where('id_participant1', 1)
            ->orWhere('id_participant2', 1);
    })
   ->where(function($query) {
        $query->where('id_participant1', 2)
            ->orWhere('id_participant2', 2);
    })
   ->get();

感谢您的回答,但是当我尝试使用变量(在函数外部声明)而不是对值进行编码时,会显示变量未定义@aynberIf如果您尝试将变量传递给子查询,则必须使用use关键字<代码>其中(函数($query)使用($variable).