Laravel PHP查询“哪里没有特定ID”

时间:2018-08-09 13:30:18

标签: php laravel laravel-5

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

这是我拥有的laravel php查询:

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

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

4 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:4)

这应该有效

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

答案 2 :(得分:3)

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

在您提供的代码中,将导致以下结果:

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

答案 3 :(得分:0)

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

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