用PHP实现JS的escape和unescape函数功能
来源:www.phpres.com 作者:Angelover 出处:www.phpres.com 2008-5-8 20:36:36 进入讨论组关 键 词:
函数 功能 实现 ar str unescape preg_match_all UCS-2
1 <?php
2 function escape($str) {
3 preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);
4 $ar = $r[0];
5 foreach($ar as $k=>$v) {
6 if(ord($v[0]) < 128)
7 $ar[$k] = rawurlencode($v);
8 else
9 $ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v));
10 }
11 return join("",$ar);
12 }
13 function unescape($str) {
14 $str = rawurldecode($str);
15 preg_match_all("/(?:%u.{4})|.+/",$str,$r);
16 $ar = $r[0];
17 foreach($ar as $k=>$v) {
18 if(substr($v,0,2) == "%u" && strlen($v) == 6)
19 $ar[$k] = iconv("UCS-2","GB2312",pack("H4",substr($v,-4)));
20 }
21 return join("",$ar);
22 }
23
24
25 $a="\u4e2d\u897f\u533a";
26 $a=str_replace('\\','%',$a);
27 echo unescape($a);
28 ?>
欢迎进入PHP开发资源论坛讨论。
2 function escape($str) {
3 preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);
4 $ar = $r[0];
5 foreach($ar as $k=>$v) {
6 if(ord($v[0]) < 128)
7 $ar[$k] = rawurlencode($v);
8 else
9 $ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v));
10 }
11 return join("",$ar);
12 }
13 function unescape($str) {
14 $str = rawurldecode($str);
15 preg_match_all("/(?:%u.{4})|.+/",$str,$r);
16 $ar = $r[0];
17 foreach($ar as $k=>$v) {
18 if(substr($v,0,2) == "%u" && strlen($v) == 6)
19 $ar[$k] = iconv("UCS-2","GB2312",pack("H4",substr($v,-4)));
20 }
21 return join("",$ar);
22 }
23
24
25 $a="\u4e2d\u897f\u533a";
26 $a=str_replace('\\','%',$a);
27 echo unescape($a);
28 ?>
·用PHP显示图片的EXIF信息
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
·使用PHP伪造sessionid做防刷新功能
·介绍一种PHP权限控制系统-PHPGACL
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
·使用PHP伪造sessionid做防刷新功能
·介绍一种PHP权限控制系统-PHPGACL
热门技术文档
·用PHP显示图片的EXIF信息
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
·使用PHP伪造sessionid做防刷新功能
·介绍一种PHP权限控制系统-PHPGACL
·显示数码图片的EXIF信息 Discuz插件ForDisc
·在PHP中cookie和session的使用总结
·哪个CMS比较好用-Mambo出鞘,谁与争锋?
·在PHP中使用Header()函数介绍
·Cute Editor for PHP 6.0─ 一個所見即所得
·每一個 PHP 開發者都應該認識的十個開發項
·整理的Discuz程序文件目录含义表
·使用PHP伪造sessionid做防刷新功能
·介绍一种PHP权限控制系统-PHPGACL
最新图文档
本站编辑推荐:(本站开通Delphi4PHP专区,欢迎进入论坛交流!)
- > 3分钟快速了解 Delphi for PHP 特色 (中文), PDF档
- > 购买Delphi for PHP的五大理由, PDF档
- > Delphi for PHP 使用规格介绍, PDF档
- > Delphi for PHP 問答集 (From CodeGear)
- > Delphi for PHP 产品价格表
编缉最近更新文章
网站赞助商
搜索您感兴趣的内容



