len:3172
len:13
len:5
len:42
len:3114
len:8
len:0
len:14
len:4
len:0
len:31
len:9
zz22zz技术论坛
首页| 论坛| 消息
主题:php解密js中escape函数
prisk发表于 2011-10-08 14:33
function unescape($str) {
$str = rawurldecode($str);
preg_match_all("/%u.{4}|&#x.{4};|&#d+;|.+/U",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(substr($v,0,2) == "%u"){
// $ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,-4)));
$ar[$k] = mb_convert_encoding(pack("H4",substr($v,-4)),"GBK","UCS-2");
}
elseif(substr($v,0,3) == "&#x"){
$ar[$k] = mb_convert_encoding(pack("H4",substr($v,3,-1)),"GBK","UCS-2");
//$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,3,-1)));
}
elseif(substr($v,0,2) == "&#") {
$ar[$k] = mb_convert_encoding(pack("n",substr($v,2,-1)),"GBK","UCS-2");
//$ar[$k] = iconv("UCS-2","GBK",pack("n",substr($v,2,-1)));
}
}
return join("",$ar);
}
?>

用iconv可能有中文的乱码问题 mb_convert_encoding对中文的支持比较好
回帖(4):
4楼:She selected the theme, "Tea in the Tropics" and created the function room decor ..
3楼:不错。用上了。
2楼:我做了一个艰难的决定 加点分给你

全部回帖(4)»
最新回帖
收藏本帖
发新帖