gpt4 book ai didi

php - 在 Laravel 中显示消息用户

转载 作者:行者123 更新时间:2023-11-29 02:58:17 25 4
gpt4 key购买 nike

我想获取发送的用户消息列表

我正在使用 users_id 来存储接收者 ID,并使用 sender_id 来存储发件人 ID 我想在 whatsapp 或 fb messenger 中显示消息用户列表

我试过用

$message    =  Messages::whereRaw("(sender_id, `users_id`, `created_at`) IN (
SELECT sender_id, `users_id`, MAX(`created_at`)
FROM messages
WHERE `users_id`=$userId
or `sender_id`=$userId
GROUP BY sender_id, `users_id`)")
->skip($start)->take(51)
->orderBy('created_at','desc')
->get();

这会获取这些用户之间最后两次对话的数据

有没有办法获取用户发送或接收的最后存储的数据?

最佳答案

经过多次尝试,我最终为 conversationId 创建了一个字段,并将消息分组到该 id 下,这样只有一个唯一的 conversationId两个用户之间

$message    =  Messages::whereRaw("(sender_id, `users_id`, `created_at`) IN (
SELECT sender_id, `users_id`, MAX(`created_at`)
FROM messages
WHERE `users_id`=$userId
or `sender_id`=$userId
GROUP BY conversationId)")
->skip($start)->take(50)
->orderBy('created_at','desc')
->get();

如果两个用户之间不存在对话,则创建对话 ID

关于php - 在 Laravel 中显示消息用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27665883/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com