手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP下escape解码函数的实现方法
PHP下escape解码函数的实现方法
摘要:GB2312编码:复制代码代码如下:functionunescape($str){$str=rawurldecode($str);preg_...

GB2312编码:

复制代码 代码如下:

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")

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

elseif(substr($v,0,3) == "")

$ar[$k] = iconv("UCS-2","GBK",pack("H4",substr($v,3,-1)));

elseif(substr($v,0,2) == "") {

$ar[$k] = iconv("UCS-2","GBK",pack("n",substr($v,2,-1)));

}

}

return join("",$ar);

}

UTF8编码:

复制代码 代码如下:

function unescape($str){

$ret = '';

$len = strlen($str);

for ($i = 0; $i < $len; $i++){

if ($str[$i] == '%' && $str[$i+1] == 'u'){

$val = hexdec(substr($str, $i+2, 4));

if ($val < 0x7f) $ret .= chr($val);

else if($val < 0x800) $ret .= chr(0xc0|($val>>6)).chr(0x80|($val&0x3f));

else $ret .= chr(0xe0|($val>>12)).chr(0x80|(($val>>6)&0x3f)).chr(0x80|($val&0x3f));

$i += 5;

}

else if ($str[$i] == '%'){

$ret .= urldecode(substr($str, $i, 3));

$i += 2;

}

else $ret .= $str[$i];

}

return $ret;

}

【PHP下escape解码函数的实现方法】相关文章:

PHP使用flock实现文件加锁的方法

PHP文本数据库的搜索方法

PHP滚动日志的代码实现

PHP rsa加密解密使用方法

php使用array_search函数实现数组查找的方法

php删除指定目录的方法

PHP输出一个等腰三角形的方法

PHP遍历数组的方法汇总

PHP递归调用数组值并用其执行指定函数的方法

php函数重载的替代方法

精品推荐
分类导航