博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php正确解码javascript中通过escape编码后的字符
阅读量:6532 次
发布时间:2019-06-24

本文共 1414 字,大约阅读时间需要 4 分钟。

js的escape如何在PHP中来解呢?

下面的这个函数可以正确的解析,网上有不少unescape的函数,但好用的不多.

这是很久以前收集的一个,不知道谁写的了,但经过测试没有问题~

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.abc.com%22%22%27%27%3C%3E%26%26

解码后:

测试www.abc.com""''<>&&

http://www.koyoz.com/blog/?action=show&id=207

转载地址:http://gsqbo.baihongyu.com/

你可能感兴趣的文章
CentOS 7之Postfix部署系列 (二) CentOS网络设置
查看>>
如何破解来自私有云的安全挑战
查看>>
用VB.net开发.NET Micro Framework
查看>>
【VMCloud云平台】拥抱Docker(四)定制属于自已的镜像
查看>>
RAC环境下的备份与恢复(二)
查看>>
浅谈物化视图
查看>>
通过MCollective更加安全地实现puppet的推送更新功能
查看>>
拯救网管老克
查看>>
DAVINCI DM365-DM368开发攻略——开发环境搭建(DVSDK4.02)
查看>>
云视频会议已成未来发展必然趋势
查看>>
必应搜索全球PK,只为证明自己
查看>>
2011年7月21日星期四
查看>>
通过 C# 代码操作 Google 日历
查看>>
在html中如何去掉热点点击后的边框
查看>>
ajax跨域原理
查看>>
python django 数据库查询方法总结
查看>>
二十三、oracle pl/sql分类三 包
查看>>
BufferedReader的mask和reset  
查看>>
最优比例生成树(0/1分数规划)
查看>>
程序即人生 » 移动平台现在可用的C++ 11特性
查看>>