ホームページ > PHPフレームワーク > ThinkPHP > thinkphpのページネーションで文字化けが発生する問題を解決する方法

thinkphpのページネーションで文字化けが発生する問題を解決する方法

WJ
リリース: 2020-06-02 17:09:15
転載
2983 人が閲覧しました

thinkphpのページネーションで文字化けが発生する問題を解決する方法

文字化けの問題は、thinkphp ページング クラスで URL を構築する際の問題が原因です。Thinkphp のページング URL では、パラメーターを区切るために「/」が使用されます。URL 内でデータを渡すとき、 URLが暗号化されている場合、2度目に渡すと文字化けしてしまいますが、パラメータを「?」と「&」で区切ればこの問題は発生しません。
したがって、変更する内容は 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 を置き換えます。

$url=U('',$parameter);
ログイン後にコピー

は次のように変更されます:

$url=$this->clin_page_url($parameter); // 生成标准的url
ログイン後にコピー

これら 2 つの手順を変更すると、thinkphp ページングの文字化けの問題は解決できます。

関連参照:thinkphp チュートリアル

以上がthinkphpのページネーションで文字化けが発生する問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート