一尘不染

将PHP默认编码设置为utf-8?

php

他们在“ PHP
Cookbook”中说(第589页),要将传出数据的char编码正确设置为utf-8,必须将default_encoding配置编辑为utf-8。

但是,我在中找不到此配置php.ini。我是否应该简单地添加一行内容default_encoding = "utf-8"

我有一个;default_charset = "iso-8859-1"。如您所见(;),目前尚未激活。我应该删除分号并将其设置为"utf-8"吗?这样可以处理默认编码吗?

我还发现了其他我不知道该怎么做的编码指令:

[iconv]
;iconv.input_encoding = ISO-8859-1
;iconv.internal_encoding = ISO-8859-1
;iconv.output_encoding = ISO-8859-1
...
; http://php.net/exif.encode-unicode
;exif.encode_unicode = ISO-8859-15
...
;mssql.charset = "ISO-8859-1"
...
;exif.encode_unicode = ISO-8859-15

有什么原因为什么我不能简单地将它们全部替换为utf-8


阅读 369

收藏
2020-05-26

共1个答案

一尘不染

您应该将其设置default_charset为UTF-8:

default_charset = "utf-8"

(如果PHP Cookbook要求您更改default_encoding-我从未听说过,则可能会有错字。)

如果要输出UTF-8编码的字符,您还需要确保将Web服务器设置为输出UTF-8。在Apache中,可以在httpd.conf文件中进行设置:

AddDefaultCharset UTF-8

至于修改 iconvexif
mssql编码的设置,你可能并不需要这些设置(设置有这些注释无论如何),但它是一个好主意,他们都更改为UTF-8进不去。

2020-05-26