以下类型的编码可安全用于 PHP。
单字节编码,
00h
到 7fh
范围内的字符具有 ASCII 兼容(ISO646 兼容)映射。
多字节编码,
00h
到 7fh
范围内的字符具有 ASCII 兼容映射。
00h
到 7fh
范围内的值。
以下是一些不太可能与 PHP 协同工作的字符编码示例。
JIS, SJIS, ISO-2022-JP, BIG-5
虽然用这些编码编写的 PHP 脚本可能无法正常工作,尤其是在编码字符串作为脚本中的标识符或文字出现的情况下,您几乎可以通过为传入的 HTTP 查询设置 mbstring
的透明编码过滤器功能来避免使用这些编码。
注意:
强烈建议不要将 SJIS、BIG5、CP936、CP949 和 GB18030 用于内部编码,除非您熟悉解析器、扫描器和字符编码。
注意:
如果您使用 PHP 连接到数据库,建议您为数据库和
内部编码
使用相同的字符编码,以方便使用并提高性能。如果您使用的是 PostgreSQL,数据库中使用的字符编码与 PHP 中使用的字符编码可能不同,因为它支持后端和前端之间的自动字符集转换。