ThinkPHP6带搜索条件的分页解决方案
在ThinkPHP6中,实现分页并不难,实现搜索也不难,但是用搜索条件进行搜索却困扰了很多人。在同样的情况下,我们移动了 tp5 代码,发现它不起作用。那么ThinkPHP6中如何解决搜索词分页问题呢?
我们来看看具体场景。我搜索了一个关键字并选择了一个类别来搜索和过滤文章。 ?在第三页上,URL 中没有搜索词。
2。如何解决:
问题的关键已经找到了,那么如何解决呢?首先我们去官网手册搜索一下:
手册里有一个query元素,负责在URL中传递额外的参数,所以很好办。
直接看代码:
$where=[];//筛选条件数组
if(input('cate_id')){
$where[] = [
['a.cate_id', '=', $cate_id],
];
}
if(input('searchkey')){
$where[] = [
['title', 'like', '%'.$searchkey.'%'],
];
}
$archivesData=Db::name('archives')->alias('a')->
field('a.id,a.title,a.listorder,b.cate_name,a.time')->
join('category b','a.cate_id=b.id')->
where($where)->
order('a.listorder asc')->//小到大
order('a.id DESC')->//大-》小
paginate([
'list_rows'=> 3,//每页数量
'query' => request()->param(),
]);
这样我们就完美解决了“ThinkPHP6带搜索条件分页”的问题。事实上,如果遇到问题,不要害怕。我们先仔细阅读一下说明书,也许可以解决我们遇到的问题。难题。
来源:php中文网站认证作者:王雪芹
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。