iconv 等价于 mb_string 函数
我有下一个代码序列:
// 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 标志字节(我猜),我不知道如何处理它。
问候, 亚历克斯
I have the next sequence of code:
// 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));
The code is part of json encode function from json.org.
What is the equivalent iconv conversion to achive the same thing?
I tried iconv('UTF-8', 'UTF-16', $char); but iconv inserts a LE flag byte (I guess), and I don't know how to deal with it.
Regards,
Alex
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
iconv('UTF-8', 'UTF-16', '$char')
转换字符串“$char”。要转换变量$char
的内容,请省略撇号。 iconv('UTF-8', 'UTF-16', $char)iconv('UTF-8', 'UTF-16', '$char')
converts the string "$char". To convert the content of the variable$char
omit the apostrophes.iconv('UTF-8', 'UTF-16', $char)