Reputation: 21278
I find the code
$ids = array_map(function ($entity) { return $entity->getId(); }, $entities);
much more readable than
$ids = array_map(function ($entity) {
return $entity->getId();
}, $entities);
However, the PHPCS forces me to use the second style, because the first one fails with the following for PSR-2 styles:
Squiz.Functions.MultiLineFunctionDeclaration.ContentAfterBrace
says that Opening brace must be the last content on the lineSquiz.WhiteSpace.ScopeClosingBrace.ContentBefore
says that Closing brace must be on a line by itselfGeneric.Formatting.DisallowMultipleStatements.SameLine
says that Each PHP statement must be on a line by itselfWhile I generally agree with these checks in other places, in this case they are completely wrong.
Is there a rule that would say to PHPCS that it should allow Simple methods in one line just like PHPStorm does?
I know I can ignore PHPCS checks in such places but I would prefer tackling this in a global configuration.
Upvotes: 5
Views: 621
Reputation: 674
If you don't like the above and are using PHP >= 8, you can do this instead:
$ids = array_map(fn ($entity) => $entity->getId(), $entities);
PHP CodeSniffer won't complain about that one.
Upvotes: 1