编码
为了正确显示和编辑文件,PhpStorm 需要知道使用哪种编码。通常,源代码文件大多采用 UTF-8 格式。除非您有其他要求,否则这是推荐的编码。
为了确定文件的编码,PhpStorm 使用以下步骤:
如果存在字节顺序标记(BOM),PhpStorm 将使用相应的 Unicode 编码,而不考虑所有其他设置。有关详细信息,请参阅字节顺序标记。
如果文件明确声明了编码,PhpStorm 将使用指定的编码。例如,这可以应用于 XML 或 HTML 文件。显式声明也会覆盖所有其他设置,但您可以在编辑器中更改它。
如果文件中没有 BOM 且没有明确的编码声明,PhpStorm 将使用文件编码设置中为文件或目录配置的编码。如果没有为文件或目录配置编码,PhpStorm 将使用父目录的编码。如果父目录编码也没有配置,PhpStorm 将回退到Project Encoding,如果没有项目,则回退到Global Encoding。
更改用于查看文件的编码
如果 PhpStorm 错误地显示文件中的字符,它可能无法检测到文件编码。在这种情况下,您需要指定用于查看和编辑此文件的正确编码。
在编辑器中打开文件后,选择编码小部件,然后选择文件的正确编码。
从主菜单中的文件编码或单击状态栏上的标有或可能更改文件内容的编码。在这种情况下,PhpStorm 会打开一个对话框,您可以在其中选择如何处理该文件:
重新加载:从磁盘加载编辑器中的文件,并将编码更改仅应用于编辑器。您将看到与所选编码相关的内容更改,但实际文件不会更改。
转换:用选择的编码覆盖文件。
这会将文件的关联添加到文件编码设置。PhpStorm 将使用指定的编码来查看和编辑这个文件。
为属性文件配置默认编码
PhpStorm 将系统默认编码应用于.properties文件。要使用其他编码,请将它们作为转义序列和 Unicode 提供。或者,在项目级别为.properties文件定义默认编码,并使用不同的 API 来读取您定义的编码中的.properties文件。
在Settings/Preferences对话框 ( Ctrl+Alt+S) 中,选择 。
执行以下操作之一:
当符号作为转义序列存储在属性文件中但显示为普通字母时,要打开特殊模式,请选中选项Transparent native-to-ascii conversion。当属性文件以 ISO 8859-1 编码时,此选项很有帮助。如果您没有任何特殊原因更改编码,建议使用此方法。
在属性文件的默认编码列表中,选择将用于项目中所有属性文件的编码。
配置文件编码设置
在Settings/Preferences对话框 ( Ctrl+Alt+S) 中,选择 。
PhpStorm 使用这些设置来查看和编辑它无法检测到编码的文件,并且还为新文件使用指定的编码。
全局编码 | 选择其他编码选项不适用时要使用的编码。 例如,PhpStorm 将对不属于任何项目的文件或当您从版本控制系统检出源代码时使用此编码。 |
项目编码 | 选择用于表中未列出的文件的编码。 |
小路 | 指定要为其配置编码的文件或目录的路径。 |
编码 | 选择用于指定文件和目录的编码。 如果禁用此选择器,则文件可能具有 BOM 或显式声明编码。在这种情况下,您无法配置用于此文件的编码。 为目录选择的编码适用于其中的所有文件和子目录。 |
属性文件的默认编码 | 选择项目中属性文件的编码。 |
透明的 native 到 ascii 的转换 | 显示国家字符(未在ISO 8859-1中定义的字符)代替相应的转义序列。 |
创建 UTF-8 文件 | 选择 PhpStorm 如何创建UTF-8文件:
默认情况下,PhpStorm 创建没有 BOM 的 UTF-8 文件,因为某些软件与 BOM 不兼容,在解释脚本时可能会出现问题。但是,在某些情况下,您可能希望在 UTF-8 文件中包含 BOM。 |
选择控制台输出编码
默认情况下,PhpStorm 使用系统编码来查看控制台输出。
在Settings/Preferences对话框 ( Ctrl+Alt+S) 中,选择 。
从默认编码列表中选择默认编码。
单击确定以应用更改。