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下操作css的float属性的特殊写法
Aug 22 Javascript
一个很酷的拖动层的js类,兼容IE及Firefox
Jun 23 Javascript
使用AngularJS创建单页应用的编程指引
Jun 19 Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
Oct 28 Javascript
JS实现网页每隔3秒弹出一次对话框的方法
Nov 09 Javascript
基于Javascript实现的不重复ID的生成器
Dec 25 Javascript
JS+CSS实现网页加载中的动画效果
Oct 27 Javascript
vue axios 二次封装的示例代码
Dec 08 Javascript
js闭包学习心得总结
Apr 17 Javascript
swiper在angularjs中使用循环轮播失效的解决方法
Sep 27 Javascript
JS实现网页烟花动画效果
Mar 10 Javascript
js函数柯里化的方法和作用实例分析
Apr 11 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
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
几个学习PHP的网址
2006/11/25 PHP
php和jquery实现地图区域数据统计展示数据示例
2014/02/12 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
PHP自定义多进制的方法
2016/11/03 PHP
php str_getcsv把字符串解析为数组的实现方法
2017/04/05 PHP
php把字符串指定字符分割成数组的方法
2018/03/12 PHP
javascript字典探测用户名工具
2006/10/05 Javascript
基于jQuery的message插件实现右下角弹出消息框
2011/01/11 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
jQuery EasyUI Panel面板组件使用详解
2017/02/28 Javascript
基于Vue制作组织架构树组件
2017/12/06 Javascript
浅析vue-router原理
2018/10/19 Javascript
通过JS深度判断两个对象字段相同
2019/06/14 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
2020/03/08 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
vue中使用echarts的示例
2021/01/03 Vue.js
跟老齐学Python之让人欢喜让人忧的迭代
2014/10/02 Python
python继承和抽象类的实现方法
2015/01/14 Python
Python脚本文件打包成可执行文件的方法
2015/06/02 Python
Python中字典的setdefault()方法教程
2017/02/07 Python
Python标准库itertools的使用方法
2020/01/17 Python
Python中pyecharts安装及安装失败的解决方法
2020/02/18 Python
python实现数学模型(插值、拟合和微分方程)
2020/11/13 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
html5+CSS3+JS实现七夕言情功能代码
2017/08/28 HTML / CSS
HTML5实现动画效果的方式汇总
2016/02/29 HTML / CSS
FORZIERI澳大利亚站:全球顶级奢华配饰精品店
2016/12/31 全球购物
Muziker英国:中欧最大的音乐家商店
2020/02/05 全球购物
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
计算机专业毕业生自荐信
2013/12/31 职场文书
幼儿园义卖活动方案
2014/01/17 职场文书
职工代表大会主持词
2014/04/01 职场文书
小学生优秀评语大全
2014/04/22 职场文书
幼儿园学前班幼儿评语
2014/12/29 职场文书
安装pytorch时报sslerror错误的解决方案
2021/05/17 Python