Laravel搜索列以给定的单词

时间:2016-03-27 04:59:24

标签: php laravel

我在使用Laravel的搜索查询时遇到了问题。

$words = 'pa';

$query = Category::where(function ($query) use ($words) {
                $query->where('name', 'like', '%'.$words)
                      ->orWhere('name', 'like', $words . '%')
                })->pluck('name');

结果是:

[{Chocolate Spa, Zen Spa, Disco Party}]

预期结果仅为Party

我希望搜索名称列以给定单词开头不包含该单词。

如何实现该搜索方法?

1 个答案:

答案 0 :(得分:3)

这应该有效:

$query = Category::where('name', 'like', $words.'%')
    ->orWhere('name', 'like', '% '.$words.'%'))
    ->pluck('name');