关于rawurldecode PHP自动解码
发表于: 2007-12-05 12:16:20
在网上找到资料说通过javascript传递参数时如果用了encodeURIComponent函数对参数进行编码,在PHP里面需要用 rawurldecode函数解码,但是我做实验的时候发现在PHP里面直接打印encodeURIComponent编码后的字符串都能正确显示(使用 rawurldecode解码后打印出来的也显示正常),我想是不是apache或者PHP哪里有这个控制选项可以自动进行解码?请教高人指点?
http://www.ietf.org/rfc/rfc2396.txt
格式是:"%" hex hex
如果解码过一次,没有%XX当然再解码也没有意义,但是如果自动解码,就不要自己手动解码,多此一举,而且还可能是错的。
没有必要弄个选项控制要不要解码,就好比你家的电话,没有一个笨蛋会对电信说不要把对方的声音变成声音,传个音频流给我就行了,除非你自己想做个电话。
如果你真的想自己解码,就不要用PHP,自己写个Apache模块,全部都是你自己解码,甚至包括HTTP包。
自动解码,编码应该是PHP模块自己处理的,因为Perl就没有自动解码,需要自己调用CGI模块解码。
为什么??看 http://www.google.cn/search?hl=zh-CN&q=encodeURIComponent&btnG=Google+%E6%90%9C%E7%B4%A2&meta=
至于用encodeURIComponent编码过的,你用rawurldecode解码还是正常,,原因是没有解码的内容。。。
rawurldecode
对已编码的 URL 字符串进行解码 (PHP 3, PHP 4, PHP 5)
string rawurldecode ( string str )
说明
返回字符串,此字符串中百分号(%)后跟两位十六进制数的序列都将被替换成原义字符。
关于rawurldecode PHP自动解码的更多相关文章
- MVC 接收参数时会自动解码
MVC在接收传递过来的参数时,会自动对参数进行解码,无需手动解码 例: public ActionResult SendMsg2(string name) { return Content(name) ...
- java编码解码乱码问题
服务器设值(中文)到界面使用了两次编码: String pageJson=URLEncoder.encode(URLEncoder.encode(str,"GBK"), " ...
- 编解码-marshalling
JBoss的Marshalling序列化框架,它是JBoss内部使用的序列化框架,Netty提供了Marshalling编码和解码器,方便用户在Netty中使用Marshalling. JBoss M ...
- 编解码-protobuf
Google的Protobuf在业界非常流行,很多商业项目选择Protobuf作为编解码框架,Protobuf的优点. (1)在谷歌内部长期使用,产品成熟度高: (2)跨语言,支持多种语言,包括C++ ...
- 编解码-java序列化
大多数Java程序员接触到的第一种序列化或者编解码技术就是Java的默认序列化,只需要序列化的POJO对象实现java.io.Serializable接口,根据实际情况生成序列ID,这个类就能够通过j ...
- URL编码与解码
在项目中碰到了ajax传来的参数,后台接收值乱码(如下图)的问题 在此记录一下 前台: 后台: 解决问题 为什么需要编码 怎样编码 实际出现的问题解决方法 1.为什么需要编码? URL 只能使用 AS ...
- C# QRCode、DataMatrix和其他条形码的生成和解码软件
今天制造了一个C#的软件,具体是用于生成二维码和条形码的,包括常用的QRCode.DataMatrix.Code128.EAN-8等等. 使用的第三方类库是Zxing.net和DataMatrix.n ...
- JavaScript字符集编码与解码
一.字符集 1)字符与字节(Character) 字符是各种文字和符号的总称,包括乱码:一个字符对应1~n个字节,一字节对应8位,每位用0或1表示. 2)字符集(Character Set) 字符集是 ...
- (中级篇 NettyNIO编解码开发)第八章-Google Protobuf 编解码-2
8.1.2 Protobuf编解码开发 Protobuf的类库使用比较简单,下面我们就通过对SubscrjbeReqProto进行编解码来介绍Protobuf的使用. 8-1 Protob ...
随机推荐
- GMTcolor
http://gmt-tutorials.org/coloring_topography.html gmt grdcut topo15.grd -R -Gcut gmt grdgradient cut ...
- localforage 对不同浏览器 使用不同的缓存策略 , 大大提高了性能 ,IndexedDB,WebSQL 和 localStorage 三种存储模式
支持回调的异步 API: 支持 IndexedDB,WebSQL 和 localStorage 三种存储模式(自动为你加载最佳的驱动程序): 支持 BLOB 和任意类型的数据,让您可以存储图片,文件等 ...
- leetcode-1-TwoNums
flag -everyday do leetcode problems at least one and at most three. problem here 需要学习的是c++的map类型,之前竟 ...
- matlab读写视频VideoReader/VideoWriter
前言 视频处理分析的过程中,需要用到将视频一帧帧地读取.写入,本文就涉及此问题. 系统环境 1.系统:win7_64 2.matlab版本:matlab2015a 测试代码 代码一(读视频): %To ...
- Windows 7 SP1 多国语言包(MUI language packs)官方下载
为了装一款 Gal Game (为毛不是装 H-Game?),使用 APP 还是太辛苦了,反正相信童鞋们也都用上“瘟妻”了嘛,装个日文的语言包基本上就可以解决问题了.大家都知道只有旗舰版(Wind ...
- mongo dos操作
https://www.cnblogs.com/beileixinqing/p/8241822.html 基础1 https://blog.csdn.net/superjunjin/article/d ...
- 树莓派挂载和卸载U盘或移动硬盘
通常我们在 /mnt 或 /media 目录下新建一个目录udisk作为挂载点 sudo mkdir /mnt/udisk 1.手动挂载: 挂载命令: sudo mount -o uid=pi,gid ...
- 【转】linux下终端命令快捷键
原文网址:http://daaoao.blog.51cto.com/2329117/554177 linux下使用终端不可避免. 使用终端快捷键,当然会使你如虎添翼.记住他们吧 终端快捷键 tab=补 ...
- 【转】每天一个linux命令(61):wget命令
原文网址:http://www.cnblogs.com/peida/archive/2013/03/18/2965369.html Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于 ...
- Jenkins进阶-远程构建任务(4)
开发过程中提交代码以后,如何不登录Jenkins就自动触发jenkins 任务来发布软件版本. 1.首先我们创建一个Jenkins任务. 2.选择"构建触发器"->勾选&qu ...