php 正确解码javascript中通过escape编码后的字符
2010-01-28 00:00
701 查看
这是很久以前收集的一个,不知道谁写的了,但经过测试没有问题~
JavaScript代码
escape编码后:
解码后:
JavaScript代码
function phpUnescape($escstr) { preg_match_all("/%u[0-9A-Za-z]{4}|%.{2}|[0-9a-zA-Z.+-_]+/", $escstr, $matches); $ar = &$matches[0]; $c = ""; foreach($ar as $val) { if (substr($val, 0, 1) != "%") { $c .= $val; } elseif (substr($val, 1, 1) != "u") { $x = hexdec(substr($val, 1, 2)); $c .= chr($x); } else { $val = intval(substr($val, 2), 16); if ($val < 0x7F) // 0000-007F { $c .= chr($val); } elseif ($val < 0x800) // 0080-0800 { $c .= chr(0xC0 | ($val / 64)); $c .= chr(0x80 | ($val % 64)); } else // 0800-FFFF { $c .= chr(0xE0 | (($val / 64) / 64)); $c .= chr(0x80 | (($val / 64) % 64)); $c .= chr(0x80 | ($val % 64)); } } } return $c; }
escape编码后:
%u6D4B%u8BD5www.jb51.net%22%22%27%27%3C%3E%26%26
解码后:
测试www.jb51.net""''<>&&
相关文章推荐
- php正确解码javascript中通过escape编码后的字符
- php正确解码javascript中通过escape编码后的字符
- php正确解码javascript中通过escape编码后的字符
- 在Android中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- 在Java中正确解码用Javascript:escape()编码的中文字符
- Java中正确解码用Javascript:escape()编码的中文字符
- PHP解码js的escape编码的字符
- PHP解码js的escape编码的字符
- C#后台对javascript的escape()方法编码后的字符进行解码
- javascript用escape编码后如何用php进行解码?
- PHP解码unicode编码的中文字符
- JavaScript PHP 通过URLEncode字串判断其编码是UTF-8还是GBK
- 【javascript基础】 JS中编码解码escape、encodeURI、encodeURIComponent区别详解【转】