2015-12-01 2 views
0

Я пытаюсь преобразовать символ Юникода в текст в PHP. Но строка представляет собой смесь символов и текста в Юникоде. Но это не работает . Позвольте мне объяснить мой сценарий.Преобразование символа Юникода в текст в php не работает

Я следовал этой ссылке (Unicode character in PHP string)

<?php 

    $unicodeChar = "{'singer': u'', 'name': u'\\\\u101c\\\\u1031\\\\u1011\\\\u1032\\\\u101c\\\\u103d\\\\u103e\\\\u1004\\\\u1037\\\\u103a\\\\u101c\\\\u102d\\\\u102f\\\\u1000\\\\u103a'}\\r\\n\\r\\n artist   : Thar Gyi\\r\\n album   : Sal Pone Ta Pone\\r\\n genre   : R&B\\r\\n copyright  : MyanmarSongs.NET\\r\\n track   : 1\\r\\n title   : Lay Htal Hlwint Lite"; 
    echo json_decode('"'.$unicodeChar.'"'); 
    echo mb_convert_encoding($unicodeChar, 'UTF-8', 'HTML-ENTITIES'); 
    echo mb_convert_encoding($unicodeChar, 'UTF-8', 'UTF-16BE'); showing nothing 

?> 

Все вышеперечисленные сценарии не работают, когда значение смеси Юникода символов и текста, как я использовал. Но он работает, когда значение настолько простое, как это.

$unicodeChar = '\u1000'; 
echo json_decode('"'.$unicodeChar.'"'); 

Так что, пожалуйста, как я могу это достичь?

+0

Фрист JSON во входной $ unicodeChar вы дали не я JSon формат. Пожалуйста, дайте мне право json. так что я могу проверить его –

+0

Нет, он пришел в любом формате. Поэтому, пожалуйста, как я могу его обнаружить? –

+0

использовать функцию mime_content_type в php http://php.net/manual/en/function.mime-content-type.php –

ответ

0

использовать следующий код

$unicodeChar = '\u1000'; 
echo json_decode('"'.$unicodeChar.'"'); 
+0

Он работает, когда валун настолько прост. Я обновил вопрос. –

Смежные вопросы