Laravel: whereIn 带变量
Laravel: whereIn with variable
我试图在变量 $sections 中收集属于发生在它们身上的部分的所有记录。但只有第 1 部分的那些人才会接我。有什么建议吗?
$sections = '1,2,3';
$data = News::where('active', '1')
->whereIn('section_id', [$sections])
->get();
如果我在查询中用 $sections 代替值,这有效,但如果我使用变量 $sections,它不起作用。
谢谢。
当您使用 whereIn()
时,您必须传递一个数组而不是字符串:
$sections = explode(',', '1,2,3');
您的 $sections 变量是一个字符串。您将该字符串传递给数组,而不是字符串中的每个单独数字。
例如:
$users = DB::table('users')
->whereIn('id', [1, 2, 3])
->get();
我试图在变量 $sections 中收集属于发生在它们身上的部分的所有记录。但只有第 1 部分的那些人才会接我。有什么建议吗?
$sections = '1,2,3';
$data = News::where('active', '1')
->whereIn('section_id', [$sections])
->get();
如果我在查询中用 $sections 代替值,这有效,但如果我使用变量 $sections,它不起作用。
谢谢。
当您使用 whereIn()
时,您必须传递一个数组而不是字符串:
$sections = explode(',', '1,2,3');
您的 $sections 变量是一个字符串。您将该字符串传递给数组,而不是字符串中的每个单独数字。
例如:
$users = DB::table('users')
->whereIn('id', [1, 2, 3])
->get();