浏览器输入的数值在PHP程序中会出现乱码
出版日期:2020年12月8日。
INFOMARTION > 浏览器输入的数值在PHP程序中会出现乱码
概述。
在PHP中从输入屏幕转到确认屏幕时出现乱码。
在表格中输入文字并转到确认屏幕时,文字出现乱码。
在过渡到自己的屏幕时,由于输入检查错误,也会出现乱码文本。
由于服务器刚建好,我觉得在PHP配置中缺少了一些东西,所以我将描述当时发现的情况。
目录
- 调查(确定事情的原因)
- 1-1. 调查
- 摘要
1. 调查(确定事情的原因)
为了调查问题的原因,对以下信息进行了调查。
1-1. 调查
首先,检查PHP设置(php.ini)。
php.ini
default_charset = "UTF-8"
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On
它与上述描述一样,似乎没有问题。
那么问题似乎是由PHP源造成的。
然而,PHP来源并没有确定可能的问题。
我再次检查了php.ini中的可疑设置,发现了一个可疑的设置。
php.ini
mbstring.http_input = auto
不清楚是否用UTF-8编码,因为它被设置为自动,所以被改成如下,以试行。
php.ini
mbstring.http_input = UTF-8
成功地解决了乱码的文本。
在 PHP 中使用多字节字符串(如日语)时,此设置对 mbstring 模块是必要的。
对收到的http请求进行编码配置。
2. 摘要
如果出现乱码,首先尝试组织处理流程。
而如果在使用PHP从输入屏幕过渡到确认屏幕或其他屏幕过渡时遇到乱码,请怀疑php.ini中的以下设置。
默认设置是'auto',所以在使用mbstring处理多字节字符串时要检查这一点。
谢谢你一直看到最后。