Rule new_with_parentheses
¶
All instances created with new
keyword must (not) be followed by
parentheses.
Configuration¶
anonymous_class
¶
Whether anonymous classes should be followed by parentheses.
Allowed types: bool
Default value: true
named_class
¶
Whether named classes should be followed by parentheses.
Allowed types: bool
Default value: true
Examples¶
Example #1¶
Default configuration.
--- Original
+++ New
<?php
-$x = new X;
-$y = new class {};
+$x = new X();
+$y = new class() {};
Example #2¶
With configuration: ['anonymous_class' => false]
.
--- Original
+++ New
<?php
-$y = new class() {};
+$y = new class {};
Example #3¶
With configuration: ['named_class' => false]
.
--- Original
+++ New
<?php
-$x = new X();
+$x = new X;
Rule sets¶
The rule is part of the following rule sets:
@PER with config:
['anonymous_class' => false]
@PER-CS with config:
['anonymous_class' => false]
@PER-CS2.0 with config:
['anonymous_class' => false]
@PhpCsFixer with config:
['anonymous_class' => false]
@Symfony with config:
['anonymous_class' => false]
References¶
Fixer class: PhpCsFixer\Fixer\Operator\NewWithParenthesesFixer
Test class: PhpCsFixer\Tests\Fixer\Operator\NewWithParenthesesFixerTest
The test class defines officially supported behaviour. Each test case is a part of our backward compatibility promise.