【发布时间】:2015-06-15 17:30:05
【问题描述】:
我有多个列,我必须从中搜索内容。列就像标题和描述等。为此,我找到了solution
但是通过此搜索,我还需要其他过滤器,例如“城市”和“类别”。我修改后的解决方案如下:
if(isset($search_term))
{
$search_terms = explode(' ', $search_term);
$fields = array('title', 'description');
foreach ($search_terms as $term)
{
foreach ($fields as $field)
{
$cases = $cases->orWhere($field, 'LIKE', '%'. $term .'%');
}
}
if (count($cases) == 0)
$cases = NULL;
}
if (isset($categoryID))
{
$cases = $cases->where('category_ID','=', $categoryID);
}
if (isset($cityID))
{
$cases = $cases->where('city_ID','=', $cityID);
}
此代码的结果并非特定于搜索词。它显示了所有结果。在我的案例中,我发现的问题是 orWhere() 方法。是吗?我可以使用什么替代方案?
【问题讨论】:
标签: laravel eloquent laravel-5