出現(xiàn)亂碼的問題是因?yàn)閠hinkphp分頁類中的,構(gòu)造url時(shí)存在的問題,thinkphp的分頁url是使用"/"來分隔參數(shù)的,在將數(shù)據(jù)傳遞到url中時(shí),經(jīng)過url加密,第二次傳遞的時(shí)候就會(huì)亂碼了,而如果我們使用"?"和"&"來分隔參數(shù)的話,就不會(huì)出現(xiàn)這個(gè)問題了。
所以要修改的內(nèi)容是thinkphp的分頁類文件:/ThinkPHP/Extend/Library/ORG/Util/Page.class.php文件。
具體修改的代碼是:
1、在thinkphp分頁類文件Page.class.php的最后加上一個(gè)自定義函數(shù),用于替換url中的參數(shù)分隔符號(hào),函數(shù)內(nèi)容如下:
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; }
自學(xué)php博客
2、修改最終生成的url
在Page.class.php文件的第99行,將原來的
$url=U('',$parameter);
修改為:
$url=$this->clin_page_url($parameter); // 生成標(biāo)準(zhǔn)的url
經(jīng)過這兩步修改就可以解決thinkphp分頁亂碼的問題了。
相關(guān)參考:thinkphp教程