Рубрики
Uncategorized

Пусть JSON лучше понимает китайский

Автор оригинала: David Wong.

начало

Я считаю, что когда многие люди используют PHP за кулисами, когда для взаимодействия используется AJAX, потому что символы обрабатываются urf-8, поэтому при использовании json _encode PHP для обработки китайского языка китайский будет закодирован и станет нечитаемым, подобно “\\\\\\\\\\\u * ” Формат также в определенной степени увеличит объем передаваемых данных.

php
STR = make JSON understand Chinese better;
echo json_encode($str);
// Output: "8ba9json 66f4 61c2 4e2d 87"

Обобщите несколько решений.

Метод 1: Создайте json_encode для поддержки китайского языка

Идея заключается в том, что строка шифруется URL-адресом, а затем расшифровывается с помощью json_encode.

 5, "name"=> "Chinese name", "arr"=> array (1, "weapon", "Chinese");
Echo json_encode_zn($str);//"Make JSON understand Chinese better"
Echo json_encode_zn($arr); //{"id": 5, "name", "Chinese name", "arr": [1","weapon","Chinese"]}

Способ 2. Используйте preg_replace для замены u** на китайском языке

Способ 3: Прямая обработка после версии 5.4

Поскольку json_encode из php5.3 добавил параметры опций, а JSON_UNESCAPED_UNICODE был добавлен в версии 5.4, имя JSON должно означать, что JSON не кодирует юникод.

Echo json_encode ("Chinese", JSON_UNESCAPED_UNICODE); //Chinese