ホームページ > バックエンド開発 > PHPチュートリアル > JSONのUnicodeエンコーディングをPHPの中国語文字に変換するにはどうすればよいですか?

JSONのUnicodeエンコーディングをPHPの中国語文字に変換するにはどうすればよいですか?

WBOY
リリース: 2016-06-23 14:15:00
オリジナル
1033 人が閲覧しました

jsonデータは2つあります
$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name":"u519cu592bu5c71u6cc9","bc":"123456","pic":"d: picwater.jpg","aid":"232fd4df3"}]
$c=[{"_id":{"$id":"4fdaa7f3741d725816000000"},"bc":"012345678","name":"u7ef4u8fbeu7eb8u5dfe" ,"cls":{"id":"125","name":"u65e5u7528u54c1"},"std":{"name":"u5f20u6570","val":"10"}}]

方法Unicode 文字は中国語の文字に変換され、

$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name":"Nongfu Spring","bc":"123456"," となります。 pic" :"d: picwater.jpg","aid":"232fd4df3"}]
$c=[{"_id":{"$id":"4fdaa7f3741d725816000000"},"bc":"012345678"," name" :"ヴィンダティッシュ","cls":{"id":"125","name":"日用品"},"std":{"name":"枚数","val": "10" }}]

誰かが知っていれば、答えを手伝ってください、よろしくお願いします~~


ディスカッションへの返信 (解決策)

linux
$str=preg_replace("#\u([0 -9a-f]{4 })#ie", "iconv('UCS-2BE', 'UTF-8', Pack('H4', '\1'))", $str);

Windows
$str=preg_replace("# \u([0-9a-f]{4})#ie", "iconv('UCS-2LE', 'UTF-8', Pack('H4', '...

3 階の返信からの引用:

linux
$str=preg_replace("#\u([0-9a-f]{4})#ie", "iconv('UCS-2BE', 'UTF-8) ', Pack('H4', '\1'))", $str);

Windows
$str=preg_replace("#\u([0-9a-f]{4})#ie", " iconv('UCS-2LE', 'UTF-8'...

いや、こう書くんですか?
$c=preg_replace("#\u([0-9a-f]{4})#ie ", "iconv('UCS-2LE' , 'UTF-8', Pack('H4','\1'))", $c);
echo $c;
$c の出力は
[{ "_id":{"$id":" 4fdaa7f3741d725816000000"},"bc":"012345678","name":"? 疲れた?濐搅?","cls":{"id":"125"," name":"?モ〉??"} ,"std":{"name":"???","val":"10"}}]
コードが文字化けしています。私は Windows プラットフォームを使用しています。解決方法を教えていただけますか。

うまくいかないとどうして言えますか?

試してみたらうまくいきました、

$str = '$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name": "u519cu592bu5c71u6cc9","bc" :"123456","pic":"d: picwater.jpg","aid":"232fd4df3"}]
$c=[{"_id":{"$id":" 4fdaa7f3741d725816000000"},"bc" :"012345678","name":"u7ef4u8fbeu7eb8u5dfe","cls":{"id":"125","name":"u65e5u7528u54c1"},"std":{"name" :"u5f20u6570","val ":"10"}}]';

$str=preg_replace("#\u([0-9a-f]{4})#ie", "iconv('UCS- 2BE', 'UTF-8 ', Pack('H4', '\1'))", $str);
echo $str;



コードが文字化けしている場合は、ブラウザのエンコードを忘れずに変更してください。

エンコード後は、必ず utf-8 を使用してください

漢字とエンコードに違いはありません。ふふふ、utf-8 が送信されていれば問題ありません。

うまくいかないとどうして言えますか?

試してみたらうまくいきました

$str = '$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name":" u519cu592bu5c71u6cc9","bc": "123456","pic":"d: picwater.jpg","aid":"232fd4df3"}]
$c=[{"_id":{"$id":"4fdaa7f3741d7 ...
私のディスプレイはどうですか いいえ、結果は次のとおりです:
$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name":"??か灞典?"," bc":"123456","pic ":"d: picwater.jpg","aid":"232fd4df3"}] $c=[{"_id":{"$id":"4fdaa7f3741d725816000000"},"bc ":"012345678","name" :"缁学描绻毛毛","cls":{"id":"125","name":"?R???"},"std":{" name":"Liao??" ,"val":"10"}}]
IEブラウザでも動作しません、何が起こっていますか?助けてください~~

動作しないとどう言いますか?

試してみたらうまくいきました、

$str = '$d=[{ "_id":{"$id":"4fda7d42741d727c14000000"},"name":"u519cu592bu5c71u6cc9","bc":"123456", "pic":"d: picwater.jpg","aid":"232fd4df3" }]
$c=[{"_id":{"$id":"4fdaa7f3741d7...
あ〜〜はい、はい。 header("Content-type: text/html; charset=utf-8"); を追加するだけで大​​丈夫です
ご協力ありがとうございます。

いいね、簡単にできる

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