|
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 和 XML: 使用expat函数(一) · 用PHP控制用户的浏览器--ob*函数的使用 · php3的ODBC函数 · 如何使用PHP中的字符串函数 · 在Windows版的PHP中使用ADO
|