Fork me on GitHub
a Sensio Labs Product

I ate three cookies 🍪 (v3.40.2) edition

Rule trailing_comma_in_multiline

Multi-line arrays, arguments list, parameters list and match expressions must have a trailing comma.

Configuration

after_heredoc

Whether a trailing comma should also be placed after heredoc end.

Allowed types: bool

Default value: false

elements

Where to fix multiline trailing comma (PHP >= 8.0 for parameters and match).

Allowed values: a subset of ['arguments', 'arrays', 'match', 'parameters']

Default value: ['arrays']

Examples

Example #1

Default configuration.

--- Original
+++ New
 <?php
 array(
     1,
-    2
+    2,
 );

Example #2

With configuration: ['after_heredoc' => true].

--- Original
+++ New
 <?php
     $x = [
         'foo',
         <<<EOD
             bar
-            EOD
+            EOD,
     ];

Example #3

With configuration: ['elements' => ['arguments']].

--- Original
+++ New
 <?php
 foo(
     1,
-    2
+    2,
 );

Example #4

With configuration: ['elements' => ['parameters']].

--- Original
+++ New
 <?php
 function foo(
     $x,
-    $y
+    $y,
 )
 {
 }

Rule sets

The rule is part of the following rule sets:

Source class

PhpCsFixer\Fixer\ControlStructure\TrailingCommaInMultilineFixer