当前位置:首页 > PHP教程 > PHP高级教程

PHP rawurlencode与urlencode函数的深入分析

问题:2个函数都是针对字符串转义使其适合做文件名。该用哪个?哪个更标准?

结论:
rawurlencode遵守是94年国际标准备忘录rfc 1738,
urlencode实现的是传统做法,和上者的主要区别是对空格的转义是'+'而不是'%20'
javascript的encodeurl也是94年标准,

而javascript的escape是另一种用"%xxx"标记unicode编码的方法。

推荐在php中使用用rawurlencode。弃用urlencode

样例
source:

超级无敌的人sadha sajdh数据样本sdls fhejrthcxzb.file.jpeg

php urlencode:
%e8%b6%85%e7%ba%a7%e6%97%a0%e6%95%8c%e7%9a%84%e4%ba%basadha+sajdh%e6%95%b0%e6%8d%ae%e6%a0%b7%e6%9c%acsdls+fhejrthcxzb.file.jpeg

php rawurlencode:
%e8%b6%85%e7%ba%a7%e6%97%a0%e6%95%8c%e7%9a%84%e4%ba%basadha%20sajdh%e6%95%b0%e6%8d%ae%e6%a0%b7%e6%9c%acsdls%20fhejrthcxzb.file.jpeg

javascript encodeuri:
%e8%b6%85%e7%ba%a7%e6%97%a0%e6%95%8c%e7%9a%84%e4%ba%basadha%20sajdh%e6%95%b0%e6%8d%ae%e6%a0%b7%e6%9c%acsdls%20fhejrthcxzb.file.jpeg

javascript escape:
%u8d85%u7ea7%u65e0%u654c%u7684%u4ebasadha%20sajdh%u6570%u636e%u6837%u672csdls%20fhejrthcxzb.file.jpeg



【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!