New Universal.ControlStructures.DisallowLonelyIf
sniff
#85
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Sniff to disallow
if
statements as the only statement in anelse
block.Inspired by the ESLint "no lonely if" rule in response to upstream PHPCS issue squizlabs/PHP_CodeSniffer#3206.
The sniff, as well as the fixer, will handle both curly brace if/else control structures as well as alternative syntax - if/else/endif - control structures correctly.
Inline control structures, i.e. without curly braces and not using alternative syntax, will be ignored by the sniff.
Note: This sniff will not fix the indentation of the "inner" code. It is strongly recommended to run this sniff together with the
Generic.WhiteSpace.ScopeIndent
sniff to get the correct indentation.Includes fixer.
Includes unit tests.
Includes documentation.