0

我有下一个代码序列:

// characters U-00000080 - U-000007FF, mask 110XXXXX
$char= pack('C*', $ord_v, ord($string{$c + 1}));
$c += 1;
$utf16= mb_convert_encoding($char, 'UTF-16', 'UTF-8');
$ret .= sprintf('\u%04s', bin2hex($utf16));

该代码是来自 json.org 的 json 编码函数的一部分。实现相同目标的等效 iconv 转换是什么?我试过 iconv('UTF-8', 'UTF-16', $char); 但是 iconv 插入了一个 LE 标志字节(我猜),我不知道如何处理它。

问候,亚历克斯

4

1 回答 1

0

iconv('UTF-8', 'UTF-16', '$char')转换字符串“$char”。要转换变量的内容,请$char省略撇号。iconv('UTF-8', 'UTF-16', $char)

于 2010-12-13T11:02:50.430 回答