我想从查询中删除斜杠,因此查询应该可以正常工作。
$str= '1','2';
$users = User::findMany([$str]);
但是,当我回应查询时,我得到了这个。
select * from `users` where `users`.`id` in ('\'1\',\'2\'');
现在,如何从查询中删除这些斜杠?
答案 0 :(得分:2)
不要使用字符串。你可以像这样传递一个数组:
$ids = [1,2];
$users = User::find($ids);
然后你可以使用en foreach或其他东西迭代$users
。
答案 1 :(得分:2)
如果floatValue
是字符串,则将此直接放入查询中,如:
$str= '1','2'
如果不是字符串,那么首先使用$users = User::findMany([$str]);
PHP方法删除单引号,并将值转换为数组并传递:
str_replace
答案 2 :(得分:0)
findMany函数需要一个将字符串更改$str = ['1','2'];
变量传递给
4.7.1
答案 3 :(得分:0)
如果您的字符串是这样的:
$ids = '1,2';
然后使用php explode函数轻松地将其转换为数组:
$ids = explodes(',',$ids);
现在你的字符串是一个数组
$ids = [1,2];
$users = User::whereIn('id',$ids)->get();
不需要循环,它会根据您的多个ID为您提供多个结果。 你可以检查这样的结果:
dd($users->toArray());