gpt4 book ai didi

symfony - "symfony new project-name"命令以 ISO-9958-1 编码生成文件

转载 作者:行者123 更新时间:2023-12-04 03:26:15 26 4
gpt4 key购买 nike

谁能告诉我为什么

symfony new project-name --full

生成 ISO-8859-1 编码的文件?正如我现在发现的那样,文件不是 UTF-8 编码的。为什么会这样,如何将其更改为 UTF-8?如何确保像 make:form 这样的命令会生成 UTF-8 文件?

我在 Windows 10 上。

最佳答案

这很可能是您的文本编辑器感到困惑或“假设”了不正确的编码..

symfony new project-name --full 只是使用 composer 创建项目。具体来说,它调用:

composer create-project symfony/website-skeleton

依次调用 git clone,就是这样。

文件并不是真正“生成”的,而只是从适当的 Git 存储库中克隆出来的。 Git 将直接检索存储库中存在的文件,而不应用任何类型的转换。

因此文件将使用它们在原始存储库中的任何编码。据我所知,这很重要......它已经 UTF-8。

但更重要的是,除了极少数异常(exception),几乎所有文件都只包含 ASCII 范围内的字符...并且由于 UTF-8 是 ASCII 的超集,没有 ASCII 范围外字符的文件与 UTF-8 无法区分或 ISO-8859-1。

最重要的是,文件的实际编码在很大程度上是无关紧要的,除了非常具体的地方(例如,将用作输出的硬编码字符串)。

我的猜测是在没有特殊字符或 BOM 的情况下,您的文本编辑器默认显示文件,就像它们以编辑器的默认编码“编码”一样,因为如果您添加任何超出 ASCII 范围的字符,这些文件将使用 ISO-8859-1 进行编码。

解决方案是更改您使用的任何代码编辑器的设置,使其默认为 UTF-8。

关于symfony - "symfony new project-name"命令以 ISO-9958-1 编码生成文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67537165/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com