7

コードで次のスタイルの配列初期化を使用しています。

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

しかし、この場合、PDT/Zend Studio は正しく動作しません。[Return] キーを押すと、カーソルが $a の下に置かれ (私の例では)、インデントが無視されます。配列キーが数字の場合 (少なくとも引用符で始まらない場合)、すべて正常に動作しています。

これが現在の動作です(| —は編集者が[Return]を押した後にキャレットを置く位置です)

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

これは期待される結果です:

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

では、編集者に私のインデント規則に従うように強制することは可能ですか?

4

7 に答える 7

3

私は最近、まったく同じ問題を抱えていました。Zend Studio (Eclipse ベースの IDE) で解決しました。

Preferences -> PHP -> Code Style -> Formatter

次に、フォーマット プリセット名の横にある画面で [編集] を選択します。開いたウィンドウで [行の折り返し] タブに移動し、リストから選択します。

Expressions -> Array Initializers.

お好みの設定で遊んでみてください。

よろしく

ルーカス

于 2010-12-14T13:20:27.820 に答える
1

CtrlZendStudio では、 + Shift+を使用して PhpCodeFormatter を適用できますF

フォーマッタは、ウィンドウ -> 環境設定 -> PHP -> コード スタイル -> フォーマッタ (Zend Studio 7.0) で構成して、上記のように配列を再フォーマットできます。

PDT (私の知る限り) にはこの機能はありません。

于 2009-08-27T09:27:36.670 に答える
1

bugzilla トラックリストにアカウントを作成し、次の機能に投票することをお勧めします:

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

十分な数の人がいる場合、彼らはおそらくそのような機能をPDTのさらなるバージョンに統合します.

于 2010-10-11T23:10:58.687 に答える
0

Eclipseについてはよくわかりませんが、TextMateでも同じ問題が発生しました。タブではなくソフトタブ(別名4スペース)に切り替えたところ、「期待どおり」として機能するようになりました。ZendStudioにはそのオプションがありますか?

于 2009-08-27T21:18:18.143 に答える
0

いいえ、それは Eclipse のバグです。

私はすべての Eclipse テキスト エディター (SQL、XML、YML、ShellEd など) を使用してそれに直面しました。

ただし、x86_64 上の Linux (Kubuntu Karmic) 用の Eclipse インストールでのみ発生します。仕事で i386 Karmic でテストしましたが、問題なく動作します。

于 2010-04-26T00:43:44.637 に答える
0

@MGriesbach:実際にはPDT(Eclipse)にはこの機能があります(Source->Formatの下)

@Sergei:Eclipseにはこの問題はありませんが、設定に問題があるようです。すべてのオプションを確認しましたか? また、Zend チームに電子メールを送信することもできます。これは、開発者が正しくインデントされていないコードを書くことを助長するため、相続人にとってはかなり些細なバグのように思えます。

- 編集 -

私の悪いことに、Eclipse PDTにはこの問題がありますが、私はそれに慣れました:)タブを押すと問題が消えるので、最初の行がインデントされます。他の行は正しく続きます。

于 2009-09-02T12:25:59.580 に答える