網站專案使用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教程有興趣的朋友有幫助。