在PHP中将Unicode字符转换为文本无效

时间:2015-12-01 10:32:49

标签: php mysql codeigniter unicode

我正在尝试将Unicode字符转换为PHP中的文本。但字符串是Unicode字符和文本的混合。但它没有用。

我点了这个链接(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

?>

如果值是我使用的Unicode字符和文本的混合,则上述所有方案都不起作用。但是,当价值如此简单时,它就会起作用:

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

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

使用以下代码

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