Laravel PHP 查询 "where not certain id"

Laravel PHP query "where not certain id"

我目前有一个查询,我在其中查找具有名字和姓氏的特定用户。但是我想确保使用它的用户不会在列表中看到他自己的名字(它用于消息系统)。

这是我的 laravel php 查询:

$users =  User::where('firstname', 'LIKE', $firstname.'%')->whereNotIn('id', $user_id)->get();

我想检查名字匹配的用户,但我不希望它获取 ID 为 user_id 的用户。有人知道怎么做吗?

将user_id作为数组传递,即[ $user_id ]:

$users =  User::where('firstname', 'LIKE', $firstname.'%')->whereNotIn('id', [$user_id])->get()

您可以使用 ->where('id', '!=', $user_id) 获取所有不与 $user_id 共享 ID 的用户。

在您提供的代码中,结果如下:

User::where('firstname', 'LIKE', $firstname.'%')->where('id', '!=', $user_id)->get()

这应该有效

$users =  User::where('firstname', 'LIKE', $firstname.'%')->where('id', '!=', $user_id)->get();
$users =  User::where('firstname', 'LIKE', $firstname.'%')->where('id','<>', $user_id)->get();