数组初始化中的正确缩进,PDT / Zend Studio

时间:2009-08-27 05:07:28

标签: php zend-studio eclipse-pdt

我在代码中使用以下样式的数组初始化:

$a = array(
    'one' => 123,
    'two' => 456
);

但是在这种情况下PDT / Zend Studio无法正常工作;按[Return]键后,它将光标置于$ a(在我的示例中)并忽略缩进。如果数组键是数字(至少不是以引号开头),一切正常。

这是它当前的工作原理(| - 是edtitor在按下[Return]后放置插入符号的位置)

$a = array(
    'one' => 123,[RETURN]
|
);

这是预期的结果:

$a = array(
    'one' => 123,[RETURN]
    |
);

那么可以强制编辑遵循我的缩进规则吗?

7 个答案:

答案 0 :(得分:3)

我最近遇到了同样的问题。我通过转到

在Zend Studio(基于Eclipse的IDE)中解决了这个问题

Preferences -> PHP -> Code Style -> Formatter

然后在fortmatter预设名称旁边的屏幕上选择编辑。在打开的窗口中,转到Line Wrapping选项卡,然后在列表中选择

Expressions -> Array Initializers

根据您的喜好进行设置。

此致

的Lukas

答案 1 :(得分:1)

在ZendStudio中,您可以使用 Ctrl + Shift + F 来应用PhpCodeFormatter。

格式化程序可以在window-> preferences-> PHP-> Code Style-> Formatter(Zend Studio 7.0)中配置为重新格式化数组,如上所述。

PDT(据我所知)没有这个功能。

答案 2 :(得分:1)

我建议您在bugzilla跟踪列表中创建一个帐户,并投票支持以下功能:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=320130

如果有足够的人,他们可能会将这些功能整合到PDT的更新版本中。

答案 3 :(得分:0)

我不确定Eclipse,但我在TextMate中遇到了同样的问题。我切换到软标签(也就是4个空格)而不是标签,它现在充当“预期”。 ZendStudio有这个选项吗?

答案 4 :(得分:0)

@MGriesbach:实际上PDT(Eclipse)确实有这个功能(在Source->格式下)

@Sergei:Eclipse没有这个问题,但这听起来像你的配置有问题。你确定你看了所有选项吗?您也可以向Zend团队发送一封电子邮件,这听起来像是继承人的一个非常微不足道的错误,因为它鼓励开发人员编写没有正确缩进的代码。

- 编辑 -

我的坏,Eclipse PDT 确实有这个问题,但我已经习惯了:)如果我按Tab键问题就会消失,所以它会缩进第一行。其他行将正确遵循。

答案 5 :(得分:0)

不,那是Eclipse的错误。

我使用所有Eclipse文本编辑器(SQL,XML,YML,ShellEd和o)来面对它。

但是,它只发生在x86_64上的Linux(Kubuntu Karmic)Eclipse安装中。 我已经在i386 Karmic上测试了它的工作,它运行正常。

答案 6 :(得分:0)

尝试

  

窗口 - >设定
  PHP->代码风格 - >格式化程序
  缩进 - >数组初始值设定项的Dafault缩进= 1