首页 » Web前端 » php搜刮神器技巧_ThinkPHP6搜索器的运用

php搜刮神器技巧_ThinkPHP6搜索器的运用

访客 2024-12-03 0

扫一扫用手机浏览

文章目录 [+]

一、理解搜索器的定义

我们依然先看看手册中关于搜索器的解释。

php搜刮神器技巧_ThinkPHP6搜索器的运用

搜索器的浸染是用于封装字段(或者搜索标识)的查询条件表达式,一个搜索器对应一个分外的方法(该方法必须是 public 类型),方法命名规范为:

php搜刮神器技巧_ThinkPHP6搜索器的运用
(图片来自网络侵删)

search FieldName Attr

FieldName 为数据表字段的驼峰转换,搜索器仅在调用 withSearch 方法的时候触发。

二、建立搜索条件

如何利用搜索器?我们结合实例来讲解。

我们有三个搜索条件分别是:goods_cate_id(分类筛选)、goods_status(状态筛选)、goods_name(关键字筛选)。

我们先建立三个搜索方法:

public function searchGoodsCateIdAttr($query, $value){ $query->where('goods_cate_id','in', $value); } public function searchGoodsStatusAttr($query, $value){ $query->where('goods_status','=', $value); } public function searchGoodsNameAttr($query, $value){ $query->where('goods_name','like', '%'.$value.'%'); }

要特殊把稳,搜索方法的命名,我们必须严格按照官方手册中的哀求定义。
比如说我们数据表搜索字段为goods_cate_id,那么在定义方法的时候如下都是缺点的:

1、public function searchGoodsCateId($query, $value),少Attr。
2、public function searchGoodsCateIDAttr($query, $value),驼峰写法缺点。
3、public function searchGoodsCateAttr($query, $value),少Id驼峰写法缺点。
4、private function searchGoodsCateIdAttr($query, $value),必须是public。

三、触发搜索

搜索器只有在调用 withSearch 方法的时候触发。

$goodsData=Goods::name('goods')->withSearch(['goods_cate_id','goods_status','goods_name'],[ 'goods_cate_id'=>$cateChilerenId, 'goods_status'=>$goods_status, 'goods_name'=>$goods_name ])->paginate(10);

其余,搜索器除了可以做搜索,同时也可以做排序功能,在这里就不再举例。

在调试的时候,我们还可以打印下sql语句,如果没有我们想要的结果,我们可以直接剖析sql语句。

echo Goods::getLastSql();

以上便是关于ThinkPHP6搜索器的利用讲解,那么在做多条件搜索的时候,中意哪个就用哪个,也可以根据自己情形自行选择。

相关文章

介绍百度码,技术革新背后的智慧之光

随着科技的飞速发展,互联网技术已经成为我们生活中不可或缺的一部分。而在这个信息爆炸的时代,如何快速、准确地获取信息,成为了人们关注...

Web前端 2025-01-03 阅读1 评论0

介绍皮箱密码,开启神秘之门的钥匙

皮箱,作为日常生活中常见的收纳工具,承载着我们的珍贵物品。面对紧闭的皮箱,许多人却束手无策。如何才能轻松打开皮箱呢?本文将为您揭秘...

Web前端 2025-01-03 阅读1 评论0

介绍盗号器,网络安全的隐忧与应对步骤

随着互联网的快速发展,网络安全问题日益突出。盗号器作为一种非法工具,对网民的个人信息安全构成了严重威胁。本文将深入剖析盗号器的原理...

Web前端 2025-01-03 阅读1 评论0