我的Java代码是这样的:
public void trans() {
try {
byte[] test = "测试".getBytes("utf-8");
for(byte b:test){
System.out.println(b);
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
这打印:
-26
-75
-117
-24
-81
-107
现在我希望使用PHP获得相同的结果,我的代码是这样的:
function getUnicodeFromOneUTF8($word) {
$arr = str_split($word);
foreach ($arr as $value)
echo hexdec(ord($value)). '</br>';
}
getUnicodeFromOneUTF8('测试');
但它打印出来:
230
181
139
232
175
149
我怎样才能得到相同的结果?
答案 0 :(得分:0)
在PHP中,您可能希望将此函数用于
$result = mb_encode_numericentity('测试test', [0, 0x10FFFF, 0, 0x10FFFF], 'UTF-8');
echo htmlentities($result);
http://php.net/manual/en/function.mb-encode-numericentity.php