Laravel模糊查询区分大小写的实例

吾爱主题 阅读:154 2021-08-24 15:48:00 评论:0

Laravel的ORM特殊操作!

举个例子:我们数据库设计的编码方式如果是ci,也就是说大小写不敏感的话,我们搜索的时候,搜索test,那么结果是Test,test,teST等等都出来,但是我们加上like binary的话,那么搜索出来的就是test,不管你的mysql数据库是什么编码排序规则。

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 # passthru : array :10 [▼ 0 => “insert” 1 => “insertGetId” 2 => “getBindings” 3 => “toSql” 4 => “exists” 5 => “ count 6 => “min” 7 => “max” 8 => “avg” 9 => “sum” ] #operators: array :26 [▼ 0 => “=” 1 => “<” 2 => “>” 3 => “<=” 4 => “>=” 5 => “<>” 6 => “!=” 7 => “like” 8 => “like binary” 9 => “not like” 10 => “between” 11 => “ilike” 12 => “&” 13 => “|” 14 => “^” 15 => “<<” 16 => “>>” 17 => “rlike” 18 => “regexp” 19 => “not regexp” 20 => “~” 21 => “~*” 22 => “!~” 23 => “!~*” 24 => “similar to” 25 => “not similar to” ]

参考文件位置:

?
1 D:\phpStudy\WWW\BCCAdminV1.0\vendor\laravel\framework\src\Illuminate\Database\Query\Builder.php
?
1 2 3 4 5 6 7 8 protected $bindings = [   'select' => [],   'join' => [],   'where' => [],   'having' => [],   'order' => [],   'union' => [], ];
?
1 2 3 4 5 6 7 8 protected $operators = [   '=' , '<' , '>' , '<=' , '>=' , '<>' , '!=' ,   'like' , 'like binary' , 'not like' , 'between' , 'ilike' ,   '&' , '|' , '^' , '<<' , '>>' ,   'rlike' , 'regexp' , 'not regexp' ,   '~' , '~*' , '!~' , '!~*' , 'similar to' ,   'not similar to' , ];
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 public function index( $customer_type = null) {   $search = request( 'search' );   $perPage = request( 'perPage' ) ? request( 'perPage' ) : 10;   $customer_type = $customer_type ? $customer_type : request( 'customer_type' );   $data = Customer::select([ 'id' , 'email' , 'user_name' , 'nick_name' , 'status' , 'phone' , 'create_time' ])    ->where( 'customer_type' , '=' , $customer_type )    ->where( function ( $query ) use ( $search ) {     if ( $search ) {      $query ->where( 'user_name' , 'like binary' , '%' . $search . '%' )       ->orWhere( 'nick_name' , 'like binary' , '%' . $search . '%' )       ->orWhere( 'phone' , 'like binary' , '%' . $search . '%' )       ->orWhere( 'email' , 'like binary' , '%' . $search . '%' );     }    })    ->orderBy( 'create_time' , 'desc' )    ->paginate( $perPage );   //追加额外参数,例如搜索条件   $appendData = $data ->appends( array (    'search' => $search ,    'perPage' => $perPage ,   ));   return view( 'admin/customer/customerList' , compact( 'data' )); }

以上这篇Laravel模糊查询区分大小写的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/zhezhebie/article/details/78342153

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容