您的位置:首页 > 编程语言 > PHP开发

php实现escape和Unescape方法

2014-10-09 14:17 711 查看
function
escape($str) {


preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);

$ar =
$r[0];

foreach($ar as
$k=>$v) {


if(ord($v[0])
< 128)



$ar[$k] = rawurlencode($v);


else



$ar[$k] =
"%u".bin2hex(iconv("GB2312","UCS-2",$v));


}

return
join("",$ar);

}

function Un_escape($str)
{[/b]
$str =
rawurldecode($str);


preg_match_all("/(?:%u.{4})|.+/",$str,$r);

$ar =
$r[0];

foreach($ar as
$k=>$v) {


if(substr($v,0,2) == "%u"
&& strlen($v) ==
6)

$ar[$k] =
iconv("UCS-2","GB2312",pack("H4",substr($v,-4)));


}

return
join("",$ar);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: