Phpstorm 如何使用所有声明的规则强制在phpsform中重新格式化整个文件?

Phpstorm 如何使用所有声明的规则强制在phpsform中重新格式化整个文件?,phpstorm,reformat,reformatting,Phpstorm,Reformat,Reformatting,如何强制phpsform从头开始重新格式化代码。这个问题似乎很愚蠢,但我注意到,例如,若我手动进行一些更改,它将保留这些更改,即使这些更改违反了设置的规则 例如: 我已使用重新格式化的构造函数参数创建对象: 但如果我将其粘贴到文件->设置->编辑器->代码样式->PHP编辑器,它将重新格式化,如下所示: 差异从何而来?为什么重新格式化工具忽略了它自己的规则?我如何强制它正确地重新格式化 在“设置”窗口示例中,右边距可能比实际项目中的边距小得多。可以在通用代码样式设置中设置项目的右边距 如果进

如何强制phpsform从头开始重新格式化代码。这个问题似乎很愚蠢,但我注意到,例如,若我手动进行一些更改,它将保留这些更改,即使这些更改违反了设置的规则

例如:

我已使用重新格式化的构造函数参数创建对象:

但如果我将其粘贴到文件->设置->编辑器->代码样式->PHP编辑器,它将重新格式化,如下所示:


差异从何而来?为什么重新格式化工具忽略了它自己的规则?我如何强制它正确地重新格式化

在“设置”窗口示例中,右边距可能比实际项目中的边距小得多。可以在通用代码样式设置中设置项目的右边距

如果进入文件->设置->编辑器->代码样式->PHP->包装和大括号,则“数组初始化器”有四个选项:

不换行:不会更改您自己的格式。 如果行太长,则换行:如果行太长,则将换行数组元素,但如果符合边距,则仍可能将多个数组项保留在一行中。 如果行太长,将包装数组项。如果要包装项目,则每个项目都将放置在其自己的行上。 始终换行:始终将每个数组元素放在自己的行上,即使原始行不够长。 如果现在很长,您可能已经将其设置为“包裹”。这意味着它确实会被包装,但几个数组项可能仍然会在同一行上结束。只要符合要求,它就符合代码样式


您可能希望将其设置为“长时切碎”,这意味着如果内容被包装,则每行始终有一个项目。

您是否尝试过以下方法:1选择整个文件内容,然后单击“重新格式化”快捷方式?2或在“项目视图”面板中选择文件,然后点击“重新格式化”,这样可以在多个文件/文件夹上调用该文件。3除此之外-代码|显示“重新格式化文件”对话框,并查看它是否选择了一些不需要的选项,例如,仅VCS已更改文本Yeah,我已尝试过:/i已启用整个文件并优化导入选项,因此我认为在这种情况下应该可以使用。然后尝试重置代码样式规则。首先,只需尝试默认的一个,看看您的代码片段是否得到了重新格式化。然后从默认值创建新的代码样式输入方案;至少为相关元素应用所需的样式,并尝试使用它-进行最小的更改,看看它是否能按要求工作。如果一切都好-完成其他规则的设置。这可能与你的右边距有关。在示例视图中,它可能比实际项目文件中的小得多。从您的屏幕截图中,我假设您总是希望每行有一个数组项,如果声明被包装的话。为此,将数组初始化器设置为“长时切掉”,而不是“长时换行”。另外,请确保您正在设置的代码样式配置文件是您在重新格式化代码时实际使用的配置文件。谢谢您的回答:我设置了它,也许它可以完成工作。您知道是否可以强制应用格式规则吗?强制应用是什么意思?如果您的意思是格式化代码,那么任何格式化规则都将在格式化代码后立即应用。