PHP正确地对Javascript中转义符编码的字符进行解码。
Javascript代码
复制代码代码如下所示:
功能phpunescape($ escstr)
{
preg_match_all( / % { 0-9a-za-z } { 4 } | %。{ 2 } | { 0-9a-za-z. + _ } + /
$ $ =匹配$ { 0 };
= $ ;
foreach($ AR达Val)
{
如果(substr($ Val,0, 1)!=% )
{
美元=瓦尔;
} elseif(substr($ Val,1, 1)!= u)
{
X元= hexdec(substr($ Val,1, 2));
$c = CHR(X元);
}
其他的
{
$值= intval(substr($ Val,2),16);
如果($ val < 0x7f) / / 0000-007f
{
$c = CHR(美元值);
} elseif($ val < 0x800) / / 0080-0800
{
$c = CHR(0xC0 |($瓦尔 / 64));
$c = CHR(0x80 |($瓦尔% 64));
}
其他 / / 0800-ffff
{
$c = CHR(0xE0 |(($瓦尔 / 64)/ 64));
$c = CHR(0x80 |(($瓦尔 / 64)% 64));
$c = CHR(0x80 |($瓦尔% 64));
}
}
}
返回$;
}
逃逸编码:
复制代码代码如下所示:
% % % 22% 22% 27% u6d4b u8bd5 27% 3C % 3e % 26% 26
解码后:
复制代码代码如下所示:
测试< < >