laravel 5.2-搜索功能


laravel 5.2 - search function

我想在我的网站上进行自定义搜索。

这里是MySQL搜索:

MyDB中选择*。MyTable WHERE(id LIKE'%MySearch%'或firstname LIKE'%MySearch%'或lastname LIKE'%MySearch%',或email LIKE'%MySearch%'OR address LIKE'%My Search%');

我怎样才能将搜索结果输入到我的Laravel控制器中??

$users=DB::table('MyTable')->where('firstname','MySearch')->get()

我的Laravel控制器

提前感谢!

$users = DB::table('MyTable')
         ->where('id', 'LIKE', '%MySearch%')
         ->or_where('firstname', 'LIKE', '%MySearch%')
         ->or_where('lastname', 'LIKE', '%MySearch%')
         ->or_where('email', 'LIKE', '%MySearch%')
         ->or_where('address', 'LIKE', '%MySearch%');
         ->get();

对于laravel 5.2:

$search = '%'.$_POST['name'].'%';
$users = DB::table('MyTable')
         ->where('id', 'LIKE', $search)
         ->orwhere('firstname', 'LIKE', $search)
         ->orwhere('lastname', 'LIKE', $search)
         ->orwhere('email', 'LIKE', $search)
         ->orwhere('address', 'LIKE', $search);
         ->get();

它工作!

您可以使用"orwhere"构建查询,如下面的

$users = DB::table('users')
                ->where('firstname', 'like', 'John%')
                ->orWhere('lastname', 'John')
                ->get();

在构建查询之前,请参阅此文档。https://laravel.com/docs/5.2/queries

这个在laravel 5.2 中也适用

    $search = '%'.$request->search.'%';
    $result = DB::table('tours')->where('name', 'like', $search)->get();