laravel - 检查小写和大写搜索

标签 laravel laravel-5

我正在使用此查询:

  public function autocomplete(Request $request)
   {
      $company_name = $request->input('query');
      $data = BusinessUser::where("company_name","LIKE",'%'. $company_name .'%')->pluck('company_name');
      return response()->json($data);
   }

在公司名称数据库中,我可以有这样的内容:“测试”、“测试”、“测试”。 那么我怎样才能检查所有这些以便得到结果。有什么建议吗?

我尝试了这个,但后来我收到一个错误,我需要传递数组:

  $data = BusinessUser::whereRaw("company_name","LIKE",'%'. $company_name .'%')->orWhereRaw("company_name","LIKE",'%'. $company_name .'%')->pluck('company_name');

编辑:

我不想更改数据库中的任何内容

最佳答案

您可以使用LOWER:

BusinessUser::whereRaw('LOWER(`company_name`) like ?', ['%'.strtolower($company_name).'%'])->pluck('company_name');

关于laravel - 检查小写和大写搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41891854/

相关文章:

php - Laravel 控制台命令 - 请求非必需(可选)输入

angularjs - 我如何在templateURL中使用Angular JS使用Laravel局部 View

php - 我无法在 Laravel 中使用路由和 Controller 查看创建的页面

laravel - 调用未定义的方法 Illuminate\Foundation\Application::bindShared()

拉拉维尔 5 : get route parameter in Controller 's constructor

laravel-5 - 路由模型绑定(bind)中的laravel 5重定向不起作用

php - 如何将查询语句转换为 DB::raw eloquent laravel?

mysql - 尝试获取模型时的递归循环

linux - Ubuntu 上的 Laravel 5.5 内部服务器错误

Phpunit 测试 Laravel Controller