youdial 发表于 2015-8-3 09:54:04

php 将字符(包括汉字) 转换成16进制 (apache access log 中文显示16进制码)

  php 将字符(包括汉字) 转换成16进制,原由是:apache access log 里面默认中文是不能显示中文的,显示的16进制字符串。
  如果想想还原直接使用php的stripcslashes函数即可,看下面代码:



$str = '\xe7\x89\xb9\xe4\xbb\xb7\xe6\x9c\xba\xe7\xa5\xa8';
echo str_replace(array("\t","\n","\r"),'',stripcslashes($str));
  如果想用PHP模拟如果生成的16进制字符串看下面代码:



$str = '大家好';
echo urlstr($str);
function urlstr($str){
$url="";
$m1="";
for($i=0;$i
页: [1]
查看完整版本: php 将字符(包括汉字) 转换成16进制 (apache access log 中文显示16进制码)