js中的escape及unescape函数的php实现代码


Posted in Javascript onSeptember 04, 2007

<?    
function phpescape($str) 

         $sublen=strlen($str); 
         $retrunString=""; 
         for ($i=0;$i<$sublen;$i++) 
         { 
                  if(ord($str[$i])>=127) 
                  { 
                           $tmpString=bin2hex(iconv("gb2312","ucs-2",substr($str,$i,2))); 
                           //$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);window下可能要打开此项 
                           $retrunString.="%u".$tmpString; 
                           $i++; 
                  } else { 
                           $retrunString.="%".dechex(ord($str[$i])); 
                  } 
         } 
         return $retrunString; 
}  
function unescape($str) { 
         $str = rawurldecode($str); 
         preg_match_all("/%u.{4}|&#x.{4};|&#\d+;|.+/U",$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) == "&#x") 
                           $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); 
}    
?>

Javascript 相关文章推荐
JavaScript与Image加载事件(onload)、加载状态(complete)
Feb 14 Javascript
JavaScript入门之基本函数详解
Oct 21 Javascript
js实现弹窗插件功能实例代码分享
Dec 12 Javascript
浅谈页面装载js及性能分析方法
Dec 09 Javascript
JavaScript类型系统之Object详解
Jan 07 Javascript
React注册倒计时功能的实现
Sep 06 Javascript
Vue+webpack实现懒加载过程解析
Feb 17 Javascript
基于js判断浏览器是否支持webGL
Apr 18 Javascript
openlayers实现地图测距测面
Sep 25 Javascript
vue中defineProperty和Proxy的区别详解
Nov 30 Vue.js
详解vue-cli项目在IE浏览器打开报错解决方法
Dec 10 Vue.js
javascript实现简单页面倒计时
Mar 02 Javascript
一个符号插入器 中用到的js代码
Sep 04 #Javascript
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
Sep 04 #Javascript
一个用js实现控制台控件的代码
Sep 04 #Javascript
科讯商业版中用到的ajax空间与分页函数
Sep 02 #Javascript
PNGHandler-借助JS让PNG图在IE下实现透明(包括背景图)
Aug 31 #Javascript
给Javascript数组插入一条记录的代码
Aug 30 #Javascript
用javascript实现给出的盒子的序列是否可连为一矩型
Aug 30 #Javascript
You might like
把77A收信机改造成收音机
2021/03/02 无线电
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
PHP获取文件相对路径的方法
2015/02/26 PHP
Centos下升级php5.2到php5.4全记录(编译安装)
2015/04/03 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
js 字符串转化成数字的代码
2011/06/29 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
js将json格式内容转换成对象的方法
2013/11/01 Javascript
JS给超链接加确认对话框的方法
2015/02/24 Javascript
JS+DIV+CSS实现仿表单下拉列表效果
2015/08/18 Javascript
基于javascript制作微信聊天面板
2020/08/09 Javascript
AngularJS打开页面隐藏显示表达式用法示例
2016/12/25 Javascript
Node.js 使用命令行工具检查更新
2017/06/08 Javascript
JS 组件系列之BootstrapTable的treegrid功能
2017/06/16 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
JavaScript find()方法及返回数据实例
2020/04/30 Javascript
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
2020/07/15 Javascript
js+h5 canvas实现图片验证码
2020/10/11 Javascript
200行自定义python异步非阻塞Web框架
2017/03/15 Python
解决PyCharm import torch包失败的问题
2018/10/13 Python
Python/ArcPy遍历指定目录中的MDB文件方法
2018/10/27 Python
基于Python的图像数据增强Data Augmentation解析
2019/08/13 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
纯CSS3打造属于自己的“小黄人”
2016/03/14 HTML / CSS
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
澳大利亚在线床零售商:Bedworks
2020/09/01 全球购物
入党申请书自我鉴定
2013/10/12 职场文书
会计毕业生自我鉴定
2013/11/04 职场文书
《他得的红圈圈最多》教学反思
2014/04/24 职场文书
艺术设计专业求职自荐信
2014/05/19 职场文书
预备党员转正意见
2015/06/01 职场文书
小学运动会通讯稿
2015/07/18 职场文书
六五普法先进个人主要事迹材料
2015/11/03 职场文书
python 字典和列表嵌套用法详解
2021/06/29 Python
《勇者辞职不干了》ED主题曲无字幕动画MV公开
2022/04/13 日漫
浅析JavaScript中的变量提升
2022/06/01 Javascript