首页 >后端开发 >PHP问题 >php 传参数为什么会乱码

php 传参数为什么会乱码

藏色散人
藏色散人原创
2021-12-22 10:23:142004浏览

php传参数会乱码是因为编码不一致,其解决办法就是修改使用uft-8编码,其修改代码如“mb_detect_encoding($typeName,'CP936,UTF-8')”。

php 传参数为什么会乱码

本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。

php 传参数为什么会乱码?

php参数乱码解决

网站项目使用gb2312作为项目编码的时候,由于不同浏览器对中文字符的编码可能不同,有的会将中文编码为网站编码,有的会把中文编码为utf-8,在后台接收参数的时候就会发生乱码的错误。一个比较好的解决方案是对参数中的中文字符进行编码的识别,如果不是gb2312就进行转化。

$typeName = $_GET['typeName'];
$encode =  mb_detect_encoding($typeName,'CP936,UTF-8') ;
//如果是CP936,就是gbk编码,如果是UTF-8, 就是utf-8编码
if ($encode =='UTF-8') {
    //再调用转换成utf-8编码的函数,最终确保是utf-8
    $typeName = iconv("utf-8","gb2312",$typeName);
}

为了网站编码问题和以后的拓展还是建议使用uft-8编码

推荐学习:《PHP视频教程

以上是php 传参数为什么会乱码的详细内容。更多信息请关注PHP中文网其他相关文章!

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