@@ -378,7 +378,6 @@ public function processMultiLineArray($phpcsFile, $stackPtr, $arrayStart, $array
378
378
379
379
if ($ tokens [$ nextToken ]['code ' ] === T_ARRAY
380
380
|| $ tokens [$ nextToken ]['code ' ] === T_OPEN_SHORT_ARRAY
381
- || $ tokens [$ nextToken ]['code ' ] === T_STATIC
382
381
|| $ tokens [$ nextToken ]['code ' ] === T_CLOSURE
383
382
|| $ tokens [$ nextToken ]['code ' ] === T_FN
384
383
|| $ tokens [$ nextToken ]['code ' ] === T_MATCH
@@ -389,10 +388,6 @@ public function processMultiLineArray($phpcsFile, $stackPtr, $arrayStart, $array
389
388
$ lastToken = $ nextToken ;
390
389
}
391
390
392
- if ($ tokens [$ nextToken ]['code ' ] === T_STATIC ) {
393
- $ nextToken = $ phpcsFile ->findNext (Tokens::$ emptyTokens , ($ nextToken + 1 ), null , true );
394
- }
395
-
396
391
if ($ tokens [$ nextToken ]['code ' ] === T_ARRAY ) {
397
392
$ nextToken = $ tokens [$ tokens [$ nextToken ]['parenthesis_opener ' ]]['parenthesis_closer ' ];
398
393
} else if ($ tokens [$ nextToken ]['code ' ] === T_OPEN_SHORT_ARRAY ) {
@@ -656,6 +651,16 @@ public function processMultiLineArray($phpcsFile, $stackPtr, $arrayStart, $array
656
651
];
657
652
$ ignoreTokens += Tokens::$ castTokens ;
658
653
654
+ if ($ tokens [$ valuePointer ]['code ' ] === T_CLOSURE
655
+ || $ tokens [$ valuePointer ]['code ' ] === T_FN
656
+ ) {
657
+ // Check if the closure is static, if it is, override the value pointer as indices before skip static.
658
+ $ staticPointer = $ phpcsFile ->findPrevious ($ ignoreTokens , ($ valuePointer - 1 ), ($ arrayStart + 1 ), true );
659
+ if ($ staticPointer !== false && $ tokens [$ staticPointer ]['code ' ] === T_STATIC ) {
660
+ $ valuePointer = $ staticPointer ;
661
+ }
662
+ }
663
+
659
664
$ previous = $ phpcsFile ->findPrevious ($ ignoreTokens , ($ valuePointer - 1 ), ($ arrayStart + 1 ), true );
660
665
if ($ previous === false ) {
661
666
$ previous = $ stackPtr ;
0 commit comments