如何有效处理ThinkPHP分页显示乱码问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计337个文字,预计阅读时间需要2分钟。
出现乱码的问题是由于ThinkPHP分页类中构造URL时存在的问题。ThinkPHP的分页URL使用/或&来分隔参数,当将数据传递到URL中时,如果经过URL加密,第二次传递数据就会导致乱码。
出现乱码的问题是因为thinkphp分页类中的,构造url时存在的问题,thinkphp的分页url是使用"/"来分隔参数的,在将数据传递到url中时,经过url加密,第二次传递的时候就会乱码了,而如果我们使用"?"和"&"来分隔参数的话,就不会出现这个问题了。
所以要修改的内容是thinkphp的分页类文件:/ThinkPHP/Extend/Library/ORG/Util/Page.class.php文件。
具体修改的代码是:
1、在thinkphp分页类文件Page.class.php的最后加上一个自定义函数,用于替换url中的参数分隔符号,函数内容如下:
private function clin_page_url($parameter){ $url = U(''); $url = str_replace('.html', '?', $url); foreach ($parameter as $key => $value) { $url .= $key.'='.$value.'&'; } $url = substr($url, 0,-1); return $url; }
自学php博客
2、修改最终生成的url
在Page.class.php文件的第99行,将原来的
$url=U('',$parameter);
修改为:
$url=$this->clin_page_url($parameter); // 生成标准的url
经过这两步修改就可以解决thinkphp分页乱码的问题了。
相关参考:thinkphp教程
以上就是如何解决thinkphp分页出现乱码问题的详细内容,更多请关注自由互联其它相关文章!
本文共计337个文字,预计阅读时间需要2分钟。
出现乱码的问题是由于ThinkPHP分页类中构造URL时存在的问题。ThinkPHP的分页URL使用/或&来分隔参数,当将数据传递到URL中时,如果经过URL加密,第二次传递数据就会导致乱码。
出现乱码的问题是因为thinkphp分页类中的,构造url时存在的问题,thinkphp的分页url是使用"/"来分隔参数的,在将数据传递到url中时,经过url加密,第二次传递的时候就会乱码了,而如果我们使用"?"和"&"来分隔参数的话,就不会出现这个问题了。
所以要修改的内容是thinkphp的分页类文件:/ThinkPHP/Extend/Library/ORG/Util/Page.class.php文件。
具体修改的代码是:
1、在thinkphp分页类文件Page.class.php的最后加上一个自定义函数,用于替换url中的参数分隔符号,函数内容如下:
private function clin_page_url($parameter){ $url = U(''); $url = str_replace('.html', '?', $url); foreach ($parameter as $key => $value) { $url .= $key.'='.$value.'&'; } $url = substr($url, 0,-1); return $url; }
自学php博客
2、修改最终生成的url
在Page.class.php文件的第99行,将原来的
$url=U('',$parameter);
修改为:
$url=$this->clin_page_url($parameter); // 生成标准的url
经过这两步修改就可以解决thinkphp分页乱码的问题了。
相关参考:thinkphp教程
以上就是如何解决thinkphp分页出现乱码问题的详细内容,更多请关注自由互联其它相关文章!

