ウェブサイトプロジェクトがプロジェクトエンコーディングとして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チュートリアルに興味のある友人の参考になれば幸いです。