请知悉:本文最近一次更新为 5年 前,文中内容可能已经过时。
这个问题的发现是因为有个转发接口,转发时出现了异常。仔细核对后发现,是参数值存在空格,而转码使用了urlencode所致。
搜了下资料,没想到这两个函数确实对空格存在区别:
urlencode会将空格转为+。
rawurlencode则会将空格转为%20。
很明显,rawurlencode的转换结果更合规。所以解决问题也很简单,将所有的urlencode替换为rawurlencode即可。
参考资料:urlencode 和 rawurlencode区别
如您从本文得到了有价值的信息或帮助,请考虑扫描下方二维码捐赠和鼓励。
如本文对您有用,捐赠和留言 将是对我最好的支持~(捐赠可转为站内积分)
如愿意,请向朋友推荐本站,谢谢。
尊重他人劳动成果。转载请务必附上原文链接,我将感激不尽。
与《PHP urlencode和rawurlencode的区别》相关的博文:
- PHP-require,include,require_once和include_once 一句话区别
- PHP empty()和isset()的区别
- 解释下PHP类中:protected,public,prtvate,interface,abstract ,final,static的含义
- PHP驱动memcache和memcached区别
- PHP7 引入的“??” 和“?:”的区别
- PHP运算符===和==的区别
- 请说明PHP中传值和引用的区别.什么时候用传值什么时候引用?
- session与cookie的区别是什么,请从协议,产生的原因与作用上说明?
- PHP静态方法和实例方法的区别
- PHP中的addslashes() 和addcslashes()差别
留言