Rule no_unneeded_control_parentheses
¶
Removes unneeded parentheses around control statements.
Configuration¶
statements
¶
List of control statements to fix.
Allowed values: a subset of ['break', 'clone', 'continue', 'echo_print', 'negative_instanceof', 'others', 'return', 'switch_case', 'yield', 'yield_from']
Default value: ['break', 'clone', 'continue', 'echo_print', 'return', 'switch_case', 'yield']
Examples¶
Example #1¶
Default configuration.
--- Original
+++ New
<?php
-while ($x) { while ($y) { break (2); } }
-clone($a);
-while ($y) { continue (2); }
-echo("foo");
-print("foo");
-return (1 + 2);
-switch ($a) { case($x); }
-yield(2);
+while ($x) { while ($y) { break 2; } }
+clone $a;
+while ($y) { continue 2; }
+echo "foo";
+print "foo";
+return 1 + 2;
+switch ($a) { case $x; }
+yield 2;
Example #2¶
With configuration: ['statements' => ['break', 'continue']]
.
--- Original
+++ New
<?php
-while ($x) { while ($y) { break (2); } }
+while ($x) { while ($y) { break 2; } }
clone($a);
-while ($y) { continue (2); }
+while ($y) { continue 2; }
Rule sets¶
The rule is part of the following rule sets:
@PhpCsFixer with config:
['statements' => ['break', 'clone', 'continue', 'echo_print', 'negative_instanceof', 'others', 'return', 'switch_case', 'yield', 'yield_from']]
@Symfony with config:
['statements' => ['break', 'clone', 'continue', 'echo_print', 'others', 'return', 'switch_case', 'yield', 'yield_from']]
References¶
Fixer class: PhpCsFixer\Fixer\ControlStructure\NoUnneededControlParenthesesFixer
Test class: PhpCsFixer\Tests\Fixer\ControlStructure\NoUnneededControlParenthesesFixerTest
The test class defines officially supported behaviour. Each test case is a part of our backward compatibility promise.