Преобразование JSON в строку UTF-8

Я хочу преобразовать объект JSON в строку. когда я использую json_encode я получаю строку, но все с шестнадцатеричными буквами. Я хочу преобразовать его в UTF-8. Другими словами, я хочу видеть персонажей. Как мне это сделать?

Я использовал json_encode для хранения данных, таких как арабские символы в полях MySQL.

Он сохранил бы арабские символы как HEX в базе данных следующим образом:

u0644 u063a …

Это неверно. Вы должны убедиться, что вы завершаете свой json_encode с помощью mysql_escape_string() .

Это позволит убедиться, что данные помещены в MySQL как:

\ U0644 \ u063a …

Затем, когда вы используете json_decode , он преобразует строки HEX в UTF-8 и выводится правильно.

Вы можете попробовать передать опцию json_encode() :

 json_encode ( $value, JSON_UNESCAPED_UNICODE ); 

Параметр JSON_UNESCAPED_UNICODE доступен только в PHP версии 5.4.0 и новее.

Благодарю.

Вы не можете, на PHP . Кроме того, строки будут по-прежнему совпадать, как только вы их декодируете.

вы смотрите именно на funcition json_decode он может конвертировать строки json в utf8

вот пример арабского слова

 $re = json_encode('لغة عربية'); echo $re ; $dd = json_decode($re); echo $dd ; die; 

он выводит: "\u0644\u063a\u0629 \u0639\u0631\u0628\u064a\u0629" لغة عربية

больше примеров здесь http://php.net/manual/en/function.json-decode.php