URLEncode:是指针对网页url中的中文字符的一种编码转化方式,最常见的就是Baidu、Google等搜索引擎中输入中文查询时候,生成经过Encode过的网页URL。URLEncode的方式一般有两种一种是传统的基于GB2312的Encode(Baidu、Yisou等使用),一种是基于UTF-8的Encode(Google,Yahoo等使用)。本工具分别实现两种方式的Encode与Decode。

中文 -> GB2312的Encode-> ����
中文 -> UTF-8的Encode -> 中文

Html中的URLEncode:
编码为GB2312的html文件中,
http://ud03.kinoko.name/中文.rar -> 浏览器自动转换为-> http://ud03.kinoko.name/����.rar
注意:Firefox对GB2312的Encode的中文URL支持不好,因为它默认是UTF-8编码发送URL的,但是ftp://协议可以,我试过了.我认为这应该算是Firefox一个bug.

编码为UTF-8的html文件中,
http://ud03.kinoko.name/中文.rar -> 浏览器自动转换为-> http://ud03.kinoko.name/中文.rar

PHP中的URLEncode:

//GB2312的Encode
echo urlencode(“中文-_. “).”\n”; // ����-_.+
echo urldecode(“����-_. “).”\n”; //中文-_.
echo rawurlencode(“中文-_. “).”\n”; // ����-_.
echo rawurldecode(“����-_. “).”\n”; //中文-_.
?>

除了 -_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。
urlencode和rawurlencode的区别:
urlencode 将空格则编码为加号(+)
rawurlencode 将空格则编码为加号( )

如果要使用UTF-8的Encode,有两种方法:
一、将文件存为UTF-8文件,直接使用urlencode、rawurlencode即可。
二、使用mb_convert_encoding函数。

$url =‘http://ud03.kinoko.name/中文.rar’;
echo urlencode(mb_convert_encoding($url, ‘utf-8′,‘gb2312′)).”\n”;
echo rawurlencode(mb_convert_encoding($url, ‘utf-8′,‘gb2312′)).”\n”;
//http://ud03.kinoko.name/中文.rar
?>

实例:

function parseurl($url=”")
{
$url = rawurlencode(mb_convert_encoding($url, ‘gb2312′,‘utf-8′));
$a = array(“:”, “/”, “@″);
$b = array(“:”, “/”, “@”);
$url = str_replace($a, $b, $url);
return $url;
}
$url=”ftp://ud03:password@ud03.kinoko.name/中文/中文.rar”;
echo parseurl($url);
//ftp://ud03:password@ud03.kinoko.name/����/����.rar
?>

JavaScript中的URLEncode:

中文-_. 中文-_.

encodeURI不对下列字符进行编码:“:”、“/”、“;”、“?”、“@”等特殊字符。

http://ud03.kinoko.name/中文.rarhttp://ud03.kinoko.name/中文.rar

urldecode的用法相关推荐

  1. python中的urlencode和urldecode的用法

    python将字符串转化成urlencode ,或者将url编码字符串decode的方法: 方法1: urlencode:urllib中的quote方法 >>> from urlli ...

  2. HTMlEncode和HTMLDecode、UrlEncode和 UrlDecode 定义和用法

    HTMlEncode和HTMLDecode 1.HTMLEncode函数:除了server.htmlencode的所有功能以外,还有转化回车和空格的功能,可以将textarea中输入的文本按照原样在h ...

  3. python urldecode用法

    最近做项目外部调用需要对url 做转码,因为开始再js  上直接做单次调用模拟均没有问题,移植python 就出现问题,发现python 和js  数据转换的时候还是存在问题. 例如数据为这样 [{& ...

  4. ajax异步后台存放购物车表,jQuery购物车插件jsorder用法(支持后台处理程序直接转换成DataTable处理)...

    本文实例讲述了jQuery购物车插件jsorder用法.分享给大家供大家参考,具体如下: JSORDER 案例 案例一:我的菜单(点击菜名即可加入菜单) 红烧豆腐 12元 毛血旺 32元 套餐:京酱肉 ...

  5. php解escape,PHP下escape解码函数用法示例

    这篇文章主要为大家详细介绍了PHP下escape解码函数用法示例,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编小韵来看看吧!GB2312编码: 代码如下: fu ...

  6. js html url编码,js URLdecode()与urlencode方法支持中文解码

    下面来介绍在js中来利用urlencode对中文编码与接受到数据后利用URLdecode()对编码进行解码,有需要学习的机友可参考参考. 代码如下 复制代码 Function str2asc(strs ...

  7. php url编码原理,urlencode编码/urldecode解码作用及使用方法

    urlencode和urldecode释义 urlencode是一个函数,可将字符串以URL编码,用于编码处理. URL编码(URL encoding),也称作百分号编码(Percent-encodi ...

  8. urlDecode百科

    urldecode 编辑 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 本函数对字符串进行URL解码.例如通过urlencode编码后的字符串,可通过UrlDecode进行 ...

  9. Python 中的 urlencode 和 urldecode 操作

    Web  编程中由于需要用 Form 或 URL 来传递参数,所以必然会有 urlencode 和 urldecode 的操作,Python Web 也不例外.Python 对 URL 的编解码操作提 ...

最新文章

  1. KDEWin Installer 0.9.8-1发布
  2. 秀一秀我的微软MVP(最有价值专家)的大礼包和水晶奖杯!
  3. python----字符串方法
  4. 客户端的效果 ktv 1216
  5. 【笔记】JAVA SE
  6. EasyUI配置当点击一个datagrid的checkbox选中或取消选中记录的时候刷新另一个datagrid数据的方法
  7. 谈谈对于UART的理解
  8. 基于朴素贝叶斯算法的新闻分类
  9. win8计算机休眠的区别,电脑的待机/关机/睡眠和休眠有什么区别?Win8开机为什么那么快?...
  10. 《权力的游戏》里,是谁活成了史诗?
  11. 佛说,是我们自己苦了自己
  12. ESP32产品系列之智能插座(一),框架及硬件设计
  13. ebp 函数堆栈esp_2.1ebp,esp与call
  14. python 图像格式转换文件夹下 jpg 转 bmp | 目录遍历
  15. 完数什么意思_数学上角的定义是什么
  16. 《东方巨龙》一首能感动所有中国人的歌,上榜一周点播过百万!
  17. 什么是UV测试?为什么要进行UV老化测试?UV老化测试的标准有哪些?
  18. win7资源管理器经常崩溃shellext.dll_unloaded
  19. 数字信号与模拟信号的区别(转载)
  20. APP推广助手,自动邀请码技术分享

热门文章

  1. 襄阳三中2021高考成绩查询,襄阳三中发布2020年高考成绩
  2. mysql 插件开发_编写MySQL Shell插件(REPORT)
  3. 德语的复数是不是都为阴性?
  4. 金婚纪念日谈黎曼函数R(x)
  5. Debian11安装Python3.10
  6. 基于乐鑫开源ESP32四轴无人机项目分享
  7. 计算机运行一段时间黑屏,电脑隔一段时间黑屏
  8. 硬件设计自查Checklist
  9. YESLAB老余——网络自动化系列
  10. 庆祝YESLAB与华为成功签约,百万酬宾活动火热进行中