【发布时间】:2017-12-07 01:37:45
【问题描述】:
如果我尝试获取名称包含传递字符串的数据库条目,则会收到以下错误。
Invalid argument supplied for foreach()
.
$search = $request['search'];
$key_search = explode(' ', $search);
$usergroups = Usergroups::whereIn('name', 'like', '%' . $search . '%')->paginate(3);
$key_search 看起来像这样:[0 => "Test", 1 => "Unicorn"];
现在我想获取名称列中包含包含传递字符串的数据的每个条目,并使用paginate(); 获取查询结果
我也尝试过类似 foreach 循环的方法,它将条目推送到另一个数组中,但这对我也不起作用,因为条目是对象而不是数组。这就是为什么 array_push 无法处理这个问题。
有人知道我可以做些什么来获得参赛作品吗?
感谢您的帮助,抱歉我的英语不好!
根据答案:
问题是我获得了数据库中的每个条目。起初与搜索键匹配的条目和最后一个条目与搜索键完全不匹配。
示例:
我正在通过“测试”和“独角兽”
我的数据库中有 10 个条目。例如:
- 测试 dkkawdmawkdkaw
- mdkawdawtestdmwakdaw // 测试
- 苹果
- 橙子
- 任何东西
- Unicorn /// Unicorn - U 是大写的
- 更多 unicornsdawdawd //独角兽
- 披萨
- 测试
- 我没有创意
所以我只想要:1、2、6、7 和 9。但我将它们全部从高匹配排序到根本不匹配。
【问题讨论】:
标签: php laravel laravel-5 laravel-pagination