LoginSignup
3
2

More than 1 year has passed since last update.

[Laravel]クエリビルダのwhereinで変数を呼びたい時の解決法

Last updated at Posted at 2022-03-31

内容

Laravelのクエリビルダで

->whereIn('user.id', [1,2,3,4]);

上記のような時はそのまま簡単にできるのですが、

$hogeIDs = [1,2,3,4,5];

->whereIn('user.id', function ($query){
  //サブクエリで何かしている
  //$hogeIDsをここで使いたい
});

この場合だと、ただ変数を呼ぶのでは

Undefined variable '$hogeIDs'

となってしまいます。
そうなった場合は

$hogeIDs = [1,2,3,4,5];

->whereIn('user.id', function ($query) use($hogeIDs){
  //サブクエリで何かしている
  //$hogeIDsが使える!
});

useで読んであげることにより使えることができます。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2