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

2025-05-29 0 45

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模糊查询区分大小写的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持快网idc。

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

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Laravel模糊查询区分大小写的实例 https://www.kuaiidc.com/92495.html

相关文章

发表评论
暂无评论