我正在尝试将现有的PHP网页转换为使用UTF-8编码。
为此,我做了以下事情:
然而,毕竟,当我回显mb_internal_encoding()时,它显示为ISO-8859-1。我在这里错过了什么?我知道我可以使用auto_prepend附加一个脚本,将默认编码更改为UTF-8,但我只是想了解我所缺少的内容。
由于
答案 0 :(得分:4)
mb_internal_encoding()
不会影响脚本本身的输出,在使用multibyte string functions以及POST和GET输入的转换时会影响默认编码。< / p>
只需使用
进行设置即可mbstring.internal_encoding='UTF-8'
在 php.ini 文件中,或以编程方式使用:
mb_internal_encoding('UTF-8');
说到mb_函数,您需要重写脚本才能使用这些函数,例如: mb_strlen()
代替strlen.()
等。
还要检查输出的HTTP内容类型标题,但是从你做过的事情来看它应该没问题。
如果您使用数据库,您还必须转换它,并指定您在连接时使用UTF-8。
答案 1 :(得分:0)
文档说明您可以使用
设置该变量/* Set internal character encoding to UTF-8 */
mb_internal_encoding("UTF-8");
应该摆脱你的问题:)