php - 与 Laravel 一对一聊天

标签 php laravel laravel-5 laravel-5.4

我有这种类型的查询,我想将其转换为 Laravel Eloquent 查询,而无需执行行查询或 DB::select。 这就是行查询的样子

Where (user_id = '$from' OR to = '$from') AND (user_id = '$to' OR to = '$to')

如何用 Eloquent 方式做到这一点?到目前为止我刚刚完成

return $query->where('user_id', $from)->orWhere('to', $from)->get();

目的是获取两个用户之间的对话,而不获取其他用户的聊天。

最佳答案

你可以这样做:

return $query->where(function($q) use ($from) {
        $q->where('user_id', $from)
          ->orWhere('to', $from);
    })->where(function ($q) use ($to) {
        $q->where('user_id', $to)
          ->orWhere(to, $to);
    })->get();

关于php - 与 Laravel 一对一聊天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48812565/

相关文章:

javascript - 如何通过超文本链接调用php函数

php - Laravel 队列数据未从构造函数传递到处理程序

php - Laravel 5.6 - 模型事件:您可以将 static::creating 和 static::updating 结合起来吗?

mysql - SQLSTATE[22007] : Invalid datetime format: 1292 Incorrect datetime value: '2008-03-30 02:56:12'

php - 作为连接的结果获取 PHP MySQL PDO 列表名

php - 在 php 中循环 - 创建不同的卷号

node.js - 没有找到 gulpfile 错误但是我清楚地安装了 gulp

laravel - 更新索引算法

php - 如何将表单中的数组添加到一起并将它们添加到数据库中的一个字段中?

mysql - 专业方式在数据库 Laravel 5.2 中添加数据