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在一段文字中的光标处插入其他文字
Aug 26 Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
Jul 18 Javascript
IE浏览器不支持getElementsByClassName的解决方法
Aug 27 Javascript
jQuery为DOM动态追加事件的方法
Feb 16 Javascript
JS组件系列之MVVM组件 vue 30分钟搞定前端增删改查
Apr 28 Javascript
详解Angular2中Input和Output用法及示例
May 21 Javascript
利用Node.js了解与测量HTTP所花费的时间详解
Sep 22 Javascript
Vue 2.5.2下axios + express 本地请求404的解决方法
Feb 21 Javascript
vue图片上传本地预览组件使用详解
Feb 20 Javascript
Vuex,iView UI面包屑导航使用扩展详解
Nov 04 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
Nov 14 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
php强制下载类型的实现代码
2011/04/21 PHP
如何使用Strace调试工具
2013/06/03 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
设置php页面编码的两种方法示例介绍
2014/03/03 PHP
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
JS 获取span标签中的值的代码 支持ie与firefox
2009/08/24 Javascript
javascript对象之内置对象Math使用方法
2010/04/16 Javascript
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
2010/11/16 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)
2014/05/22 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
解决angularjs中同步执行http请求的方法
2018/08/13 Javascript
Vue组件Draggable实现拖拽功能
2018/12/01 Javascript
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
python使用心得之获得github代码库列表
2014/06/25 Python
python基础教程之Filter使用方法
2017/01/17 Python
Python实现一个转存纯真IP数据库的脚本分享
2017/05/21 Python
django允许外部访问的实例讲解
2018/05/14 Python
python批量修改图片尺寸,并保存指定路径的实现方法
2019/07/04 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
详解Django CAS 解决方案
2019/10/30 Python
编程用JAVA解析XML的方式
2013/07/07 面试题
前处理组长岗位职责
2014/03/01 职场文书
国庆节活动总结
2014/08/26 职场文书
投标文件签署授权委托书范本
2014/10/12 职场文书
导游词范文
2015/02/13 职场文书
合同纠纷调解书
2015/05/20 职场文书
大学生党课感想
2015/08/11 职场文书
安全教育主题班会教案
2015/08/12 职场文书
2016年教师反腐倡廉心得体会
2016/01/13 职场文书
Java Socket实现多人聊天系统
2021/07/15 Java/Android
nginx搭建NFS网络文件系统
2022/04/14 Servers