php还原16进制特殊字符

特殊字符的16进制表:https://websitebuilders.com/tools/html-codes/ascii/ 可以通过 hexdec() 和 chr()方法来进行转换, 例子: xml version=\x221.0\x22 encoding=\x22utf-8\x22?>\x0A<order id=\x22test\x22 affiliate=\x22main\x22 event_id=\x221\x22 ref=\x22TPCYA\x22 alias=\x22\x22/> 其中 \x22 就是双引号 “,而 \x0A 就是换号 \n,通过一些方法转换后: $str = “\x0A”; function hexdec_string($content) { preg_replace_callback( “(\\\\x([0-9a-f]{2}))i”, function($matches) {return chr(hexdec($matches[1]));}, // $string $content ); return $content; } echo htmlspecialchars(hexdec_string($str), ENT_QUOTES); //将 xml的内容作为纯文本输出 结果: xml version=”1.0″ encoding=”utf-8″?> <order id=”test” affiliate=”main” event_id=”1″ ref=”TPCYA” alias=””/> 参考:https://stackoverflow.com/questions/12238657/decoding-javascript-escape-sequences-in-php-x27-x22-etc […]