PHP Static analysis for public

Label Recipes Issues Files Severity Frequence
Append And Assign Arrays All, Internal, Analyze 1 1 Minor 0 %
Null Or Boolean Arrays All, Analyze 6 2 Minor 0 %
Weak Type With Array All, Analyze 51 27 Minor 0 %
Abstract Or Implements All, Analyze, LintButWontExec, ChangedBehavior 162 162 Major 24 %
Ambiguous Visibilities All, Analyze, Semantics 48 43 Minor 70 %
Avoid option arrays in constructors All, Analyze, ClassReview 1 1 Minor 0 %
Avoid Optional Properties All, Analyze 122 47 Major 84 %
Check After Null Safe Operator All, Analyze, Suggestions 4 1 Major 0 %
Could Be Abstract Class All, Analyze, ClassReview 3 3 Minor 65 %
Method Could Be Static All, Analyze, ClassReview 57 40 Minor 92 %
Could Inject Parameter All, Analyze, ClassReview, ChangedBehavior 331 182 Minor 0 %
Different Argument Counts All, Analyze, ClassReview 1 1 Minor 0 %
Don't Unset Properties All, Analyze, Top10, php-cs-fixable, CI-checks, CE 1 1 Major 42 %
Empty Classes Analyze, All, Simple 3 3 Minor 60 %
Hidden Nullable Typehint All, Analyze, ClassReview 4 3 Minor 0 %
Incompatible Signature Methods With Covariance All, Analyze 105 104 Critical 0 %
Instantiating Abstract Class Analyze, All, Simple 1 1 Major 13 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2 20 15 Minor 71 %
Method Signature Must Be Compatible All, Analyze, LintButWontExec 48 48 Critical 53 %
Mismatch Properties Typehints All, Analyze, LintButWontExec, ClassReview 14 13 Minor 0 %
Multiple Identical Trait Or Interface Analyze, OneFile, All, Simple, CI-checks, CE 65 65 Minor 0 %
No Null With Null Safe Operator All, Analyze, ClassReview, ChangedBehavior 9 5 Minor 0 %
No Readonly Assignation In Global All, Analyze, ClassReview, ChangedBehavior 16 8 Minor 0 %
Non Nullable Getters All, Analyze, ClassReview 125 46 Minor 0 %
Parent First All, Analyze, Suggestions 11 11 Minor 56 %
Property Could Be Local All, Analyze, ClassReview 35 24 Minor 76 %
Same Name For Property And Method All, Analyze, ClassReview, Semantics 298 78 Minor 0 %
Never Used Properties Analyze, All, Simple, Unused 1 1 Minor 71 %
Property Used In One Method Only All, Analyze 34 24 Minor 84 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview 19 16 Minor 63 %
Should Use Local Class Analyze, ClearPHP, All, Simple 80 45 Minor 95 %
Undefined Classes Analyze, All, Stubs, Undefined 134 17 Major 91 %
Undefined Class Constants Analyze, All, CI-checks, Stubs, LintButWontExec, Undefined, ChangedBehavior, CE 23 2 Major 62 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks, CompatibilityPHP82, Undefined, ChangedBehavior, CE 4 2 Major 61 %
Undefined ::class All, Analyze, CI-checks, Undefined, CE 28 2 Major 36 %
Unfinished Object All, Analyze, ClassReview 211 110 Major 0 %
Unreachable Method All, Analyze, Dead code, ClassReview, Unused 2 2 Minor 0 %
Unresolved Instanceof Analyze, Dead code, ClearPHP, All, Simple, Top10 3 3 Major 48 %
Unused Class Constant All, Analyze, ClassReview, Unused 168 5 Minor 0 %
Unused Public Methods All, Analyze, ChangedBehavior 531 214 Minor 0 %
Used Once Property All, Analyze 23 16 Minor 74 %
Useless Abstract Class Analyze, All, Simple 2 2 Minor 33 %
Useless Constructor Analyze, All, Simple, Level 3, ChangedBehavior 24 24 Minor 41 %
Wrong Typed Property Default All, Analyze, LintButWontExec, ClassReview, CI-checks, CE 5 5 Minor 0 %
Converted Exceptions All, Analyze 11 9 Minor 0 %
Forgotten Thrown All, Analyze 1 1 Minor 20 %
Throw Raw Exceptions All, Analyze, Suggestions 289 122 Minor 0 %
Uncaught Exceptions Analyze, All 300 124 Minor 84 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple 1 1 Minor 45 %
Useless Try All, Analyze, ChangedBehavior 1 1 Minor 0 %
Use Named Boolean In Argument Definition All, Analyze 79 30 Minor 84 %
Could Make A Function All, Analyze, Suggestions 82 42 Minor 66 %
Empty Function Analyze, All, Simple 122 83 Minor 74 %
Fn Argument Variable Confusion All, Analyze, Semantics 2 2 Minor 0 %
Insufficient Typehint All, Analyze, Typechecks 1 1 Major 43 %
Method Is Not An If All, Analyze 5 3 Minor 0 %
Mismatch Parameter Name All, Analyze, CompatibilityPHP80, ChangedBehavior, CE 2 2 Minor 0 %
Mismatched Default Arguments All, Analyze, Typechecks 2 2 Minor 80 %
Mismatched Typehint All, Analyze, Typechecks 193 85 Major 66 %
Modified Typed Parameter All, Analyze, ClassReview 20 10 Minor 0 %
Must Return Methods Analyze, All, Simple, Level 2, LintButWontExec, CI-checks, CE 6 6 Major 34 %
Never Called Parameter All, Analyze, Suggestions, Rector, Unused 7 6 Minor 92 %
No Boolean As Default All, Analyze 4 4 Minor 84 %
No Default For Referenced Parameter All, Analyze 3 3 Minor 0 %
No Return Used All, Analyze, Suggestions, Level 4 15 14 Minor 69 %
Relay Function Analyze, All 108 66 Major 84 %
Class-typed References All, Analyze, CI-checks, CE 3 3 Minor 37 %
Unused Parameter Analyze, All, Simple, Unused 25 8 Major 90 %
Unused Returned Value All, Analyze, OneFile, Dead code, Simple, Unused 50 24 Minor 41 %
Useless Argument All, Analyze 139 71 Minor 0 %
Useless Referenced Argument All, Analyze 4 4 Minor 58 %
Uses Default Values Analyze, All, Simple, CI-checks, IsPHP, IsStub, IsExt, CE 557 138 Minor 98 %
Wrong Argument Type All, Analyze, Typechecks 6 6 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks, Stubs, IsPHP, IsStub, IsExt, CE 115 69 Major 81 %
Wrong Optional Parameter Analyze, All, Simple, Level 1, CI-checks, CompatibilityPHP80, ChangedBehavior, CE 2 2 Minor 32 %
Wrong Type Returned All, Analyze, ClassReview, CI-checks, LintButWontExec, CE 402 227 Minor 0 %
Wrong Type With Call All, Analyze, Typechecks, CI-checks, CE 160 78 Minor 0 %
Already Parents Interface Analyze, All, Level 3, Suggestions, IsPHP, IsStub, IsExt 65 65 Minor 26 %
Forgotten Interface All, Analyze, ChangedBehavior 32 32 Minor 48 %
Empty Interfaces Analyze, All, Simple 5 5 Minor 41 %
Interfaces Is Not Implemented All, Analyze, ClassReview, LintButWontExec, CI-checks, IsPHP, IsStub, IsExt, CE 3 3 Minor 0 %
Repeated Interface All, Analyze, LintButWontExec 65 65 Minor 0 %
Undefined Interfaces Analyze, All, CI-checks, LintButWontExec, Undefined, IsPHP, IsStub, IsExt, CE 32 12 Major 72 %
Useless Interfaces Analyze, ClearPHP, All, Simple, ClassReview, Typechecks 7 7 Minor 59 %
Hidden Use Expression Analyze, OneFile, All, Simple, CI-checks, CE 4 4 Minor 23 %
Multiple Alias Definitions Analyze, All, Simple, CI-checks, CE 21 21 Minor 44 %
Unresolved Use Analyze, ClearPHP, All, Simple, IsPHP, IsStub, IsExt 50 16 Major 69 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE 2 2 Major 57 %
Logical To in_array All, Analyze, Level 2 1 1 Minor 67 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks, CE 12 8 Minor 74 %
Assumptions All, Analyze 5 2 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks, CE 5 5 Major 76 %
Possible Missing Subpattern All, Analyze, Top10, CI-checks, CE 1 1 Minor 45 %
PHP Native Class Type Compatibility All, Analyze, CompatibilityPHP81 48 24 Major 0 %
No Null For Native PHP Functions All, Analyze, CompatibilityPHP81, Deprecated 12 11 Minor 0 %
Should Use Coalesce Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE 1 1 Major 71 %
Use PHP Object API Analyze, ClearPHP, All, Simple, CI-checks, CE 1 1 Minor 27 %
Wrong Type For Native PHP Function All, Analyze, CI-checks, CE 27 22 Minor 0 %
Comparison Is Always The Same All, Analyze, ChangedBehavior 14 8 Minor 0 %
Array_merge Needs Array Of Arrays All, Analyze 2 2 Minor 0 %
Bail Out Early All, Analyze, OneFile, Simple, Level 4 5 2 Minor 64 %
Buried Assignation Analyze, All 1 1 Minor 84 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1 1 1 Minor 56 %
Could Be Else All, Analyze 1 1 Minor 49 %
Don't Change The Blind Var All, Analyze 2 2 Minor 73 %
Don't Mix ++ All, Analyze 27 10 Minor 56 %
Double Assignation Analyze, All 8 6 Major 59 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE 1 1 Minor 66 %
Infinite Recursion All, Analyze 1 1 Major 0 %
Is Actually Zero All, Analyze, Level 2, CI-checks, ChangedBehavior, CE 2 1 Minor 18 %
Max Level Of Nesting All, Analyze 2 1 Minor 0 %
Merge If Then All, Analyze, CI-checks, ChangedBehavior, CE 8 8 Minor 0 %
Missing Assignation In Command All, Analyze 22 8 Minor 0 %
Nested Ifthen Analyze, All, RadwellCodes 5 4 Major 84 %
No Hardcoded Hash Analyze, Security, All, Simple 1 1 Critical 45 %
No Hardcoded Ip Analyze, ClearPHP, Security, All, Simple 240 3 Minor 25 %
No Need For Triple Equal All, Analyze 8 6 Minor 0 %
No Null For Index All, Analyze 4 4 Minor 0 %
Variable Is Not A Condition All, Analyze 3 2 Minor 93 %
@ Operator Appinfo, ClearPHP, All, Analyze, Performances, CI-checks, CE 1 1 Minor 65 %
Several Instructions On The Same Line Analyze, All, ChangedBehavior 1 1 Major 56 %
Repeated Regex All, Analyze, Level 1, CI-checks, CE 4 4 Minor 47 %
Same Conditions In Condition Analyze, All, Simple, CI-checks, CE 1 1 Critical 55 %
Should Use Ternary Operator All, Analyze, OneFile, Simple, CI-checks, CE 10 10 Minor 86 %
Preprocessable Analyze, All, Rector 27 16 Minor 85 %
Static Loop Analyze, All, Simple, Level 4 4 4 Minor 67 %
Suspicious Comparison All, Analyze, Level 3 1 1 Major 39 %
Switch To Switch Analyze, All, RadwellCodes, Simple 1 1 Minor 58 %
Switch Without Default Analyze, ClearPHP, All, Simple, CI-checks, CE 7 7 Major 69 %
Use Positive Condition All, Analyze, OneFile, Simple 2 2 Minor 82 %
Useless Type Casting All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks, CE 5 2 Minor 47 %
Useless Parenthesis Analyze, All, Simple, CI-checks, CE 14 8 Minor 81 %
Should Typecast Analyze, OneFile, All, Simple, CI-checks, Rector, CE 5 5 Minor 49 %
Missing Some Returntype All, Typehints, Analyze, CI-checks, CE 9 9 Minor 0 %
StandaloneType True False Null All, Appcontent, Analyze 273 116 Minor 0 %
Wrong Type With Default All, Analyze, LintButWontExec, ClassReview 10 8 Minor 0 %
Assigned Twice All, Analyze 10 3 Minor 79 %
Overwritten Literals Analyze, All 11 3 Major 79 %
Undefined Variable All, Analyze, CI-checks, Undefined, CE 12 8 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10 3 3 Minor 74 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4, CE 128 65 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple, Unused 1 1 Minor 87 %