".$str; ?このように、『私は"/> ".$str; ?このように、『私は">
ホームページ >バックエンド開発 >PHPチュートリアル >PHP は GET を使用して漢字のエンコード変換を送信します
PHP は GET を使用して漢字のエンコーディング変換を送信します
? GET メソッドを使用して中国語の文字エンコーディングを送信する場合、ブラウザーごとに異なる問題が発生するため、次のコードに示すように、まず中国語の文字をトランスコードしてから Unicode に変換して送信する必要があります。
$str = rawurlencode(iconv("GBK", "UTF-8", "我是谁")); echo "<br> ".$str;? この方法では、「Who am I」は %E6%88%91%E6%98%AF%E8%B0%81 のようなエンコードに変換され、ブラウザーのアドレス
に送信されます。
このパラメータを受け取ると、エンコードを逆変換する必要があり、処理は 2 つのステップに分かれます:1. ページのエンコード形式を定義します:
これは最初のステップであり、このページを読み取るときに表示するエンコーディングを使用するようにブラウザーに要求するため、ヘッダー エンコーディングの定義をページに追加する必要があります:
header("Content-Type:text/html; charset = gbk");
どのようなエンコーディングであっても、それはどのエンコーディングでもあります。
2. 受信データ:
GET メソッドを使用して中国語の文字を送信すると、ブラウザによって Unicode エンコードに解析されるため、最初に utf-8 エンコードに変換する必要があります。
??????
$_articleName = rawurldecode($_articleName) ;?????? rawurldecode は、%E6%88%91%E6%98%AF%E8%B0%81 を utf-8 に変換します。
次に、iconv を使用してエンコーディングを変換します。
?
$_articleName = iconv("UTF-8", "GBK", "$_articleName");
このようにして、gbk のエンコードを正常に表示できます。
gb2312 も同じですが、gbk を gb2312 に置き換えるだけです。
?