网站项目使用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); }
以上就介绍了php参数乱码解决,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。