PHP 字符编码要求

以下类型的编码可安全用于 PHP。

  • 单字节编码,

    • 它对 00h7fh 范围内的字符具有 ASCII 兼容(ISO646 兼容)映射。

  • 多字节编码,

    • 它对 00h7fh 范围内的字符具有 ASCII 兼容映射。
    • 它不使用 ISO2022 转义序列。
    • 它在表示单个字符的任何复合字节中不使用 00h7fh 范围内的值。

以下是一些不太可能与 PHP 协同工作的字符编码示例。

JIS, SJIS, ISO-2022-JP, BIG-5

虽然用这些编码编写的 PHP 脚本可能无法正常工作,尤其是在编码字符串作为脚本中的标识符或文字出现的情况下,您几乎可以通过为传入的 HTTP 查询设置 mbstring 的透明编码过滤器功能来避免使用这些编码。

注意:

强烈建议不要将 SJIS、BIG5、CP936、CP949 和 GB18030 用于内部编码,除非您熟悉解析器、扫描器和字符编码。

注意:

如果您使用 PHP 连接到数据库,建议您为数据库和 内部编码 使用相同的字符编码,以方便使用并提高性能。

如果您使用的是 PostgreSQL,数据库中使用的字符编码与 PHP 中使用的字符编码可能不同,因为它支持后端和前端之间的自动字符集转换。

添加备注

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top