PHP アドレスバーの中国語の $_GET が文字化けする、urlencode と urldecode の使い方を詳しく説明します
URL エンコード
構文: string urlencode(string str);
戻り値: 文字列
関数の種類: エンコード処理
例:
コードをコピー コードは次のとおりです:
$ ChineseName="私の名前は中国語です";
$EncodeStr=urlencode($ ChineseName);
echo " 私の名前";
?>
URL デコード
URL エンコードされた文字列を復元します。
構文: string urldecode(string str);
戻り値: String
関数の種類: エンコード処理
例:
以前に渡された中国語テキストを処理して表示します
コードをコピー コードは次のとおりです。
$DecodeStr=urldecode($_GET['name']); // ブラウザが自動的にデコードしてくれるため、デコードする必要はないかもしれません
echo $DecodeStr;
?>
PHPのgetメソッドでURLから取得した中国語文字化け問題について
$gonghui = iconv("gb2312","UTF-8",$gonghuiを使用してください) ); 別のメソッド コード
/**
* マルチバイト文字列エンコーディング変換関数
*
* @param string str エンコードして変換する必要がある文字列
* @param string to_encoding は、次のような特定のエンコーディングへの変換を指定します。 : gb2312、gbk、utf-8 など
* @parammixed from_encoding JIS、eucjp-win、sjis-win 混合エンコーディングを同時に指定するなど、元の文字列のエンコーディングを混合指定します
* @return string
string mb_convert_encoding ( string str, string to_encoding [,mixed from_encoding] )
**/
mb_convert_encoding 関数は、PHP の内部マルチバイト文字列エンコーディング変換関数であり、必要に応じてほぼすべてのエンコーディングをサポートできます。 PHP >= 4.0.6、5 つのバージョンがサポートされています。
reg.php?gh=XX を直接取得します。
// ユニオンのログインパラメータ
$gonhui = $_GET['gh'];
取得した $gonghui は gb2312 でエンコードされ、文字化けを表示するために utf-8 Web ページに出力されます
が
に変更されました //ユニオンログインパラメータ
$gonghui = $_GET['gh'];
$gonghui = mb_convert_encoding($gonghui, "UTF-8", "gb2312");
正常に表示されます
ページ全体を変換します
この方法は、すべてのコーディング環境に適しています。このように、最初の 128 文字 (表示文字) 以外のすべての文字セットは NCR で表されます (「漢字」などの数字参照は「漢字」に変換されます)。このようなエンコードをページ上で使用できます。どのエンコード環境でも正常に表示されます。
次の 3 行のコードを php ファイルの先頭に追加します。
コードをコピーします コードは次のとおりです。
mb_internal_encoding("gb2312") // gb2312 は元のエンコーディングです。ウェブサイトの
mb_http_output("HTML-ENTITIES")
ob_start('mb_output_handler');
mb_convert_encoding 関数を使用するには、PHP の mbstring (マルチバイト文字列) 拡張機能を有効にする必要があります。
PHP の mbstring 拡張機能が有効になっていない場合は、PHP が拡張機能をサポートできるように次の設定を行う必要があります。
1. Windows サーバー環境
php.ini ファイルを編集し、extension=php_mbstring.dll の前の ; を削除し、Web サーバーを再起動します。
2. Linux サーバー環境
設定のコンパイル時に --enable-mbstring=cn コンパイル パラメーターを追加し、PHP をコンパイルしてインストールします。
他のネチズンからの 3 番目の参照方法:
//方法 1 urldecode
$url = 'aaa.php?region='.urldecode("四川省");
aaa
//方法 2 Base64_encode
$test="四川省";
$test1=base64_encode($test);
エコー 'aaa ';
?>
別のページはbase64_decodeを使用してデコードされます
base64_decode($region);
//方法 3 により、サーバーは中国語をサポートします
[root@dhcp ~]# ロケール
lang=zh_cn.utf-8
lc_ctype="zh_cn.utf-8"
lc_numeric="zh_cn.utf-8"
lc_time=c
lc_collate=c
lc_monetary ="zh_cn.utf-8"
lc_messages="zh_cn.utf-8"
lc_paper="zh_cn.utf-8"
lc_name="zh_cn.utf-8"
lc_address=" zh_cn.utf-8"
lc_telephone="zh_cn.utf-8"
lc_measurement="zh_cn.utf-8"
lc_identification="zh_cn.utf-8"
lc_all=
[root@dhcp ~]#

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ドリームウィーバー CS6
ビジュアル Web 開発ツール

Dreamweaver Mac版
ビジュアル Web 開発ツール
