"\xe4\xb8\xad\xe5\x9b\xbd" 请问这是什么编码 要怎么转换成汉字呢 之前群里有个朋友说直接echo 就可以了 我把这个字符串直接放在一个字符串里面 然后echo是可以输出对应的中文 但是如果从一个input框里获取输入的这个字符串然后再用echo输出缺是输出了这个原本的字符串 没有输出汉字 反斜线转义我也检查了 没有双重转义的问题 请问要怎么才能转换成中文 谢谢大家编码PHP
调试欢乐多
$f = create_function('', "return \"$s\";") ;
echo $f();//方法1
echo pack('H*', str_replace('\x', '', $s));
header('Content-Type: text/html; charset='.mb_detect_encoding($str));echo $str
下面的那个方法报错了哦
Warning: pack() [<a href='function.pack'>function.pack</a>]: Type H: illegal hex digit � in C:\wamp\www\ios\test.php on line 84
非法十六进制数字当然你需要自行保证数据的合法性!
"\xe4\xb8\xad\xe5\x9b\xbd" 我用上面的那个字符串要转换回来 但还是会报错
谢谢版主的热心解答,同时也感谢Drazzi!
例如
\xe4\xb8\xadA\xe5\x9b\xbd //中A国
这种情况,用老徐的方法pack去掉\x会出现 adA ,这就不符合16进制了,所以前面要增加对字串预处理的步骤,做起来就不如方法一方便了