PHP がデータベースを処理して、漢字ではなく「Zhang San」のエンコードを読み取るのはなぜですか?
この投稿は、gunzi318 によって最終編集されました: 2014-06-17 19:14:13
$con = mysql_connect("localhost","root", " 1234 ");
MySQL_SELECT_DB (" テスト ", $ CON);
mysql_query (" Set Names UTF8 ");
MySQL_QUERY (" Set Character_Set_Client = Utf8 "); ( "setcharacter_set_results=utf8");
$q=mysql_query("SELECT * FROM people")
while($e=mysql_fetch_assoc($q)){
$出力 []=$e; }
print(json_encode($output));
?> 出力結果:
[{"id":"10"," name":"ジョン","性別":"1","誕生年":"1979"},{"id":"11","名前
:"u5f20u4e09","
性別": "1","birthyear":"1989"}]
なぜ Zhang San ではないのでしょう---- --解決策-------------- ------
json_encode を行うため、中国語は Union エンコードに変換されます
print(json_encode ($output)); が
print($output) に変更されます);
json_encode 以降の中国語も確認したい場合は、以前に書いた記事を参照してください: http://blog.csdn.net/fdipzone/article/details/28766357------解決策----------------------
json_encode は utf-8 でエンコードされたデータのみを受け入れます
json_encode は複数の形式に変換しますjson エンコード時に utf-8 文字を 2 バイトの Unicode エンコードエンティティ形式に変換します
この方法により、ブーケはどのような環境でも使用できます エンコードによるデータの歪みはありません
主に json データ形式が使用されますjs と通信するため、ブラウザはエンコードされたデータをその作業用文字セット unicode に変換します
したがって、json_encode のトランスコーディング作業には、ブラウザのストレスを軽減するのに役立ちます