适用:thinkphp5,6,8以及后面版本
thinkphp里查询分页paginate默认使用参数字符串page,当某个页面有多个请求都使用到分页时,如果都用page参数就会出现冲突
//默认的分页查询
$map = [];
db('news_comment')->where($map)
->paginate(10);
比如:
请求1:/api/newsList?page=2
请求2:/api/newsCommentList
[请求2]的page就会调用请求1的page,也是获取到page=2的了,但是[请求2]实际我们是需要默认page=1的
解决方法:
thinkphp分页paginate支持自定义的page参数,var_page对应的就是自定义的page参数字符串,示例:
//分页查询,自定义page参数
$map = [];
db('news_comment')->where($map)
->paginate(10, false, ['var_page'=>'spage']);
这时我们请求2里的代码就可以改成上面方式的
请求1:/api/newsList?page=2
请求2:/api/newsCommentList 这里还是默认第1页,不会受到请求1[page]参数的影响
请求2第二页:/api/newsCommentList?spage=2