Add rule to disallow error control operator #230
Closed
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.
Overview
This Pull Request introduces a new static analysis rule that prohibits the use of PHP's error control operator (@).
Specification
This rule will flag lines of code that use the error control operator @, issuing a warning or error for that line.
Background and Motivation
The error control operator is frequently misused, often exceeding its appropriate scope, to ignore or suppress errors. This misuse is well-known for posing risks that can degrade the quality of application code and complicate debugging.
By adding this new rule, we believe the following benefits can be achieved:
I believe that this rule will help PHPStan users to adopt a more strict coding style, thereby assisting in the development of more reliable software.