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


Posted in PHP onSeptember 29, 2019

Laravel的ORM特殊操作!

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

#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” 
]

参考文件位置:

D:\phpStudy\WWW\BCCAdminV1.0\vendor\laravel\framework\src\Illuminate\Database\Query\Builder.php
protected $bindings = [
  'select' => [],
  'join' => [],
  'where' => [],
  'having' => [],
  'order' => [],
  'union' => [],
 ];
protected $operators = [
  '=', '<', '>', '<=', '>=', '<>', '!=',
  'like', 'like binary', 'not like', 'between', 'ilike',
  '&', '|', '^', '<<', '>>',
  'rlike', 'regexp', 'not regexp',
  '~', '~*', '!~', '!~*', 'similar to',
  'not similar to',
 ];
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模糊查询区分大小写的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
在windows iis5下安装php4.0+mysql之我见
Oct 09 PHP
用PHP的ob_start();控制您的浏览器cache!
Feb 14 PHP
PHP开发需要注意的安全问题
Sep 01 PHP
for循环连续求和、九九乘法表代码
Feb 20 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
May 05 PHP
PHP代码优化的53个细节
Mar 03 PHP
php实现的Captcha验证码类实例
Sep 22 PHP
CI框架给视图添加动态数据
Dec 01 PHP
py文件转exe时包含paramiko模块出错解决方法
Aug 12 PHP
thinkphp jquery实现图片上传和预览效果
Jul 22 PHP
PHP编程快速实现数组去重的方法详解
Jul 22 PHP
PHP实现求两个字符串最长公共子串的方法示例
Nov 17 PHP
基于laravel Request的所有方法详解
Sep 29 #PHP
基于Laravel 5.2 regex验证的正确写法
Sep 29 #PHP
php实现对文件压缩简单的方法
Sep 29 #PHP
Laravel 添加多语言提示信息的方法
Sep 29 #PHP
php实现登录页面的简单实例
Sep 29 #PHP
php实现推荐功能的简单实例
Sep 29 #PHP
php实现分页功能的详细实例方法
Sep 29 #PHP
You might like
暴雪前总裁遗憾:没尽早追赶Dota 取消星际争霸幽灵
2020/03/08 星际争霸
php扩展ZF――Validate扩展
2008/01/10 PHP
PHP 伪静态技术原理以及突破原理实现介绍
2013/07/12 PHP
PHP中常见的密码处理方式和建议总结
2018/10/14 PHP
PHP大文件及断点续传下载实现代码
2020/08/18 PHP
SyntaxHighlighter语法高亮插件使用说明
2011/08/14 Javascript
今天是星期几的4种JS代码写法
2013/09/17 Javascript
完美解决IE低版本不支持call与apply的问题
2013/12/05 Javascript
一个css与js结合的下拉菜单支持主流浏览器
2014/10/08 Javascript
原生js实现移动端瀑布流式代码示例
2015/12/18 Javascript
利用yarn实现一个webpack+react种子
2016/10/25 Javascript
详谈angularjs中路由页面强制更新的问题
2017/04/24 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
2018/03/03 Javascript
JS中数组与对象的遍历方法实例小结
2018/08/14 Javascript
Vue-router 切换组件页面时进入进出动画方法
2018/09/01 Javascript
移动端如何用下拉刷新的方式实现上拉加载
2018/12/10 Javascript
vue防止花括号{{}}闪烁v-text和v-html、v-cloak用法示例
2019/03/13 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
初次部署django+gunicorn+nginx的方法步骤
2019/09/11 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
德国大型和小型家用电器网上商店:Energeto
2019/05/15 全球购物
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
2014/07/27 面试题
高中毕业生自我鉴定范文
2013/09/26 职场文书
暑期实习鉴定
2013/12/16 职场文书
迟到检讨书800字
2014/01/13 职场文书
公司前台辞职报告
2014/01/19 职场文书
生育关怀行动实施方案
2014/03/26 职场文书
蓝颜请假条
2014/04/11 职场文书
大学生活动总结怎么写
2014/04/29 职场文书
工程部部长岗位职责
2015/02/12 职场文书
办公室卫生管理制度
2015/08/04 职场文书