|
PHP版的escape/unescape函数
php提供的URL编码函数是基于字节的,对由ie的javascript函数escape编码的数据就无能为力了。 因此在此共享本人的php版的escape/unescape函数
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 unescape($str) { $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); }
返回类别: 教程 上一教程: PHP中SESSION详解 下一教程: 没有了
您可以阅读与"PHP版的escape/unescape函数"相关的教程: · 简体中文转变为繁体中文的PHP函数 · php通用检测函数集(4) · php通用检测函数集(2) · 当PHP被禁用的PHP函数:tempnam() 后 · PHP4与MySQL数据库操作函数详解(六)
|