首页 > 上网技巧 > 电脑小技巧 > thinkphp分页中文参数乱码解决

thinkphp分页中文参数乱码解决

时间:2018-08-13 10:54 作者:QQ地带 我要评论

今天发现分页有中文参数会出现乱码,以前都是查询字符串或数字没有问题,所以没发现。URL在Apache上是/不会有问题,但是在IIS上用/会乱码,必须用?=这种格式才行。
 
在某个问题下的回答,终于把分页的格式转成了?=,解决了这个问题,特此分享下,如有更多解决办法欢迎探讨。
 
只用改ThinkPHP\Library\Think\Page.class文件:
 
把:
 
return str_replace(urlencode('[PAGE]'), $page, $this->url);
改成:
 
return str_replace('[PAGE]', $page, $this->url);
 
 
把:
 
$this->url = U(ACTION_NAME, $this->parameter);
改成:
 
$paramStr="";
foreach($this->parameter as $key => $value){
    $paramStr = $paramStr.'&'.$key.'='.$value;
}
$paramStr = substr($paramStr,1,strlen($paramStr));
$this->url = U(ACTION_NAME).(strpos(U(),"?")?'&':'?').$paramStr;

标签: thinkphp
顶一下
(0)
0%
踩一下
(0)
0%

Google提供的广告