应用希望我将字符串插入text encoded using hex values in proper coding.
,编码为Unicode_No_Compression
例如,对于Sześć siedem
,正确的HEX字符串为0053007A0065015B0107002000730069006500640065006D
,
Źdźbło
= 01790064017A00620142006F
String with no special chars
= 0053007400720069006E0067002000770069007400680020006E006F0020007300700065006300690061006C002000630068006100720073
我尝试使用MySQL HEX()
/ UNHEX()
和dechex()
PHP,但无法弄清楚如何进行此转换。有什么想法吗?
答案 0 :(得分:9)
我猜你正在查看UCS-2编码的十六进制版本。因此:
php > echo strtoupper(bin2hex(iconv('UTF-8', 'UCS-2', 'Źdźbło')));
01790064017A00620142006F
答案 1 :(得分:0)
试试这个:
$out = implode("",array_map(function($x) {return sprintf("%04X",ord($x));},str_split($in)));
一个班轮;)