php escape URL编码


Posted in PHP onDecember 10, 2008

徐祖宁的php版的escape/unescape函数

function escape($str) { 
preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r); 
$ar = $r[0]; 
foreach($ar as $k=>$v) { 
if(ord($v[0]) < 128) 
$ar[$k] = rawurlencode($v); 
else 
$ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v)); 
} 
return join("",$ar); 
} 
function unescape($str) { 
$str = rawurldecode($str); 
preg_match_all("/(?:%u.{4})|.+/",$str,$r); 
$ar = $r[0]; 
foreach($ar as $k=>$v) { 
if(substr($v,0,2) == "%u" && strlen($v) == 6) 
$ar[$k] = iconv("UCS-2","GB2312",pack("H4",substr($v,-4))); 
} 
return join("",$ar); 
}
PHP 相关文章推荐
浅谈Windows下 PHP4.0与oracle 8的连接设置
Oct 09 PHP
php cookie 登录验证示例代码
Mar 16 PHP
关于crontab的使用详解
Jun 24 PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 PHP
Linux下创建nginx脚本-start、stop、reload…
Aug 03 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 PHP
php字符串函数学习之strstr()
Mar 27 PHP
PHP中通过trigger_error触发PHP错误示例
Jun 23 PHP
PHP加密3DES报错 Call to undefined function: mcrypt_module_open() 如何解决
Apr 17 PHP
轻松实现php文件上传功能
Feb 17 PHP
phpStudy中升级MySQL版本到5.7.17的方法步骤
Aug 03 PHP
thinkphp3.2框架中where条件查询用法总结
Aug 13 PHP
php 破解防盗链图片函数
Dec 09 #PHP
中英文字符串翻转函数
Dec 09 #PHP
php2html php生成静态页函数
Dec 08 #PHP
php 远程图片保存到本地的函数类
Dec 08 #PHP
PHP 出现乱码和Sessions验证问题的解决方法!
Dec 06 #PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 #PHP
php 远程关机操作的代码
Dec 05 #PHP
You might like
一个用于MySQL的PHP XML类
2006/10/09 PHP
PHP脚本的10个技巧(4)
2006/10/09 PHP
用php+mysql一个名片库程序
2006/10/09 PHP
深入php var_dump()函数的详解
2013/06/05 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
2017/10/11 PHP
Js 随机数产生6位数字
2010/05/13 Javascript
Javascript中string转date示例代码
2013/11/01 Javascript
js操作输入框提示信息且响应鼠标事件
2014/03/25 Javascript
JavaScript实现简单的拖动效果
2016/07/02 Javascript
jQuery Easyui datagrid/treegrid 清空数据
2016/07/09 Javascript
详解vue组件化开发-vuex状态管理库
2017/04/10 Javascript
详解Vue-cli 创建的项目如何跨域请求
2017/05/18 Javascript
解决vue+webpack打包路径的问题
2018/03/06 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
2020/06/02 Javascript
如何通过Proxy实现JSBridge模块化封装
2020/10/22 Javascript
[56:35]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第二局
2016/02/27 DOTA
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
Python 调用Java实例详解
2017/06/02 Python
python requests 使用快速入门
2017/08/31 Python
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
Python定时任务sched模块用法示例
2018/07/16 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
2019/01/07 Python
Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法详解
2019/02/28 Python
python 对字典按照value进行排序的方法
2019/05/09 Python
python实现月食效果实例代码
2019/06/18 Python
Django结合ajax进行页面实时更新的例子
2019/08/12 Python
使用wxpy实现自动发送微信消息功能
2020/02/28 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
2020/03/03 Python
Shop Apotheke瑞士:您的健康与美容网上商店
2019/10/09 全球购物
某公司Java工程师面试题笔试题
2016/03/27 面试题
女子职高个人自荐书
2014/02/01 职场文书
优秀教师工作总结2015
2015/07/22 职场文书
2016年安全月活动总结
2016/04/06 职场文书
Win10 Anaconda安装python-pcl
2022/04/29 Servers