ホームページ  >  記事  >  バックエンド開発  >  PHP は json 中国語を使用して文字化けする解決策を例で説明します_PHP チュートリアル

PHP は json 中国語を使用して文字化けする解決策を例で説明します_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:41:19778ブラウズ

PHP でよく使用される 2 つの関数は、encode_json() と decode_json() です。
中国語をエンコードするときに encode_json() 関数が文字化けを引き起こす問題の解決策に焦点を当てましょう。
まず、必要な配列を書き出します:
$json = array (
0 =>
array (
id => 13,
name => Table Tennis,
),
1 =>
array (
id => 17,
name => バスケットボール,
)
)
?>

encode_json を使用して直接エンコードすると、出力結果は次のようになります:
[ { "id":"13","name":null}
,{"id":"13","name":null}]
?>
明らかに、中国語の文字は正しくエンコードされていません。これは、json がエンコーディング
のみをエスケープするためです (バックグラウンド ファイルが gb2312 エンコーディングを使用していると仮定します)。そのため、上記のステートメントは最初にエンコーディングを変換する必要があります:
foreach ($ajax as $key=>$val)
{
$ajax [ $key][name] =
urlencode($val[name]);
}
echo json_encode($json);
?>
同様に、クライアント JS コード スクワロンでエンコードされた中国語を decodeURI() でデコードします。それ。
これまでのところ、php での json の中国語エンコードの問題は解決されました。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/486150.html技術記事 PHP には、encode_json() と decode_json() という 2 つの一般的に使用される関数があります。encode_json() 関数を中国語のエンコードに使用した場合の文字化けの問題の解決策に焦点を当てましょう。 まず、必要なことを書き出します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。