欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

为啥提交得出的rawurlencode() 跟直接输出的不一样的呢

程序员文章站 2024-04-03 12:19:58
...
为什么提交得出的rawurlencode() 跟直接输出的不一样的呢?

if($_POST['submit']){
echo $_POST['name']."=
";
echo rawurlencode($_POST['name']);
}
echo rawurlencode("女人");
?>




这样提交“女人”得出:%C5%AE%C8%CB
而直接输出的 rawurlencode("女人"): 又是:%E5%A5%B3%E4%BA%BA

这是为什么呢?


------解决方案--------------------
因为提交的是gbk,你的php文件是utf8.
------解决方案--------------------
另外提醒, 表单提交来的是urlencode,不是rawurlencode,而JS的URIcomponentEncode(是不是这么拼)相当于php的rawurlencode,主要区别就是空格是+还是%20.

你想看到正确结果如下:

PHP code
为啥提交得出的rawurlencode() 跟直接输出的不一样的呢

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频