php处理带有中文URL的方法


Posted in PHP onJuly 11, 2016

本文实例讲述了php处理带有中文URL的方法。分享给大家供大家参考,具体如下:

ie6超链接有中文的时候会有问题,万恶的ie6啊.PHP使内置的urlencode函数也不行,urlencode把斜杠等ascii码字符也给编码了,还是不能解决问题,使用下面的函数可以解决这个问题.

原理很简单,就是把所有byte大于127的byte转换为16进制.

中文超链接地址

// utf-8编码
$url = 'http://ftp.dotcoo.com/PHP视频教程.rar';
//urlencode结果:
echo urlencode($url);
http%3A%2F%2Fftp1.zdy.co%2Fmovie%2F%E6%88%91%E4%B8%BA%E7%9B%B8%E4%BA%B2%E7%8B%82.rmvb
//link_urldecode结果:
echo link_urldecode($url);
http://ftp1.zdy.co/movie/%E6%88%91%E4%B8%BA%E7%9B%B8%E4%BA%B2%E7%8B%82.rmvb
//link_urldecode函数:
function link_urldecode($url) {
  $uri = '';
  $cs = unpack('C*', $url);
  $len = count($cs);
  for ($i=1; $i<=$len; $i++) {
    $uri .= $cs[$i] > 127 ? '%'.strtoupper(dechex($cs[$i])) : $url{$i-1};
  }
  return $uri;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
linux下 C语言对 php 扩展
Dec 14 PHP
php二维数组排序与默认自然排序的方法介绍
Apr 27 PHP
php版本的cron定时任务执行器使用实例
Aug 19 PHP
ThinkPHP模板之变量输出、自定义函数与判断语句用法
Nov 01 PHP
php约瑟夫问题解决关于处死犯人的算法
Mar 23 PHP
解决php表单重复提交实现方法
Sep 29 PHP
Thinkphp实现短信验证注册功能
Oct 18 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
php-fpm服务启动脚本的方法
Apr 27 PHP
PHP abstract 抽象类定义与用法示例
May 29 PHP
Laravel 连接(Join)示例
Oct 16 PHP
使用laravel根据用户类型来显示或隐藏字段
Oct 17 PHP
PHP实现JS中escape与unescape的方法
Jul 11 #PHP
php处理复杂xml数据示例
Jul 11 #PHP
php的debug相关函数用法示例
Jul 11 #PHP
php错误日志简单配置方法
Jul 11 #PHP
PHP进行批量任务处理不超时的解决方法
Jul 11 #PHP
PHP封装的数据库保存session功能类
Jul 11 #PHP
php中array_column函数简单实现方法
Jul 11 #PHP
You might like
推荐几个开源的微信开发项目
2014/12/28 PHP
php实现读取手机客户端浏览器的类
2015/01/09 PHP
怎样搭建PHP开发环境
2015/07/28 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
thinkphp5使用无限极分类
2019/02/18 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
jQuery 打造动态下滑菜单实现说明
2010/04/15 Javascript
30个精美的jQuery幻灯片效果插件和教程
2011/08/23 Javascript
Firefox中beforeunload事件的实现缺陷浅析
2012/05/03 Javascript
js 如何实现对数据库的增删改查
2012/11/23 Javascript
jquery easyui 结合jsp简单展现table数据示例
2014/04/18 Javascript
JavaScript中提前声明变量或函数例子
2014/11/12 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
js实现百度地图定位于地址逆解析,显示自己当前的地理位置
2016/12/08 Javascript
基于Two.js实现星球环绕动画效果的示例
2017/11/06 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
2018/09/21 Javascript
Vuex 使用 v-model 配合 state的方法
2018/11/13 Javascript
Webpack3+React16代码分割的实现
2021/03/03 Javascript
python自动化测试实例解析
2014/09/28 Python
python类继承用法实例分析
2014/10/10 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
python+pillow绘制矩阵盖尔圆简单实例
2018/01/16 Python
python 请求服务器的实现代码(http请求和https请求)
2018/05/25 Python
便捷提取python导入包的属性方法
2018/10/15 Python
Python自定义一个类实现字典dict功能的方法
2019/01/19 Python
python DataFrame 取差集实例
2019/01/30 Python
python 实现让字典的value 成为列表
2019/12/16 Python
Windows+Anaconda3+PyTorch+PyCharm的安装教程图文详解
2020/04/03 Python
优秀的计算机专业求职信范文
2013/12/27 职场文书
入党申请自荐书范文
2014/02/11 职场文书
法人单位授权委托书范文
2014/10/06 职场文书
自我推荐信怎么写
2015/03/24 职场文书
申请吧主发表的感言
2015/08/03 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
windows下快速安装nginx并配置开机自启动的方法
2021/05/11 Servers
腾讯云服务器部署前后分离项目之前端部署
2022/06/28 Servers