Help us understand the problem. What is going on with this article?

phpstormで配列最後の要素をカンマ付きで統一させるフォーマット設定

More than 1 year has passed since last update.

phpで配列のカンマ付きの指定はどうされていますか?
PHP5.4以降では配列の短縮構文が追加されてarray()の代わりに[]を使えるようになってからは
個人的には読みやすいので[]が好みですが、

最後の要素の指定で,(カンマ)をつけるかどうか統一されていないコードもありますが、
PhpStormのコードフォーマットで一括でリファクタリングする設定です。

配列最後の要素の後のカンマをつけるべきか?どうか

そもそもですが、
まずカンマをつけるべきかどうか迷うところでもあると思います。公式のDOCに記述がありました。

最後の要素のあとのカンマは、書いても書かなくてもかまいません。 配列を一行で定義する場合は、ふつうは最後のカンマを省略します。つまり、 array(1, 2) のほうが array(1, 2, ) よりおすすめだということです。 しかし複数行で定義する場合は、最後のカンマをつけることが一般的です。 そうしておけば、配列の最後に要素を追加するのが容易になるからです。

ということで基本どっちでもいいよと言っちゃってますが、
複数行で定義の際はカンマ付きの方がいいよねということのようです。
たしかにgithubなどのバージョン管理を使用している際は、定義などで最後の要素を追加した時にカンマありの方が差分が見やすくなるのでいいですね。

array(
    key  => value,
    key2 => value2,
    key3 => value3,
    ...
)

[
    key  => value,
    key2 => value2,
    key3 => value3,
    ...
]

配列最後の要素をカンマ付きで統一させるフォーマット設定

  • 「環境設定」→「エディター」→「コード・スタイル」→「PHP」

「コード変換」タブで
「複数行配列の最後の要素の後にコンマを追加する」にチェックを入れる

スクリーンショット 2019-09-03 11.47.37.png

この設定でOKとし、該当ファイルを開いてコードの再フォーマットを適用すると要素の最後に自動でカンマをつけてフォーマットしてくれます。

コードフォーマットは以下コマンドです。
Cmd + Alt + L(Mac)またはCtrl + Alt + L(Win)
※ファイル保存しただけでは再フォーマットはされません。

前回の関連記事

phpstormで配列のarray()を[]にフォーマットで統一させる設定
https://qiita.com/a-nishimura/items/2acfb667ea6f6c596d96

参照

https://www.php.net/manual/ja/language.types.array.php

a-nishimura
フリーランスプログラマ。主にweb系のソフトウェアエンジニアです。日々の学びや気づきなどブログ書いてます。フットサル、筋トレ、日向坂46、YouTubeが好きです。
https://www.wow-creators.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした