PHP Static analysis for public

Label Recipes Issues Files Severity Frequence
Randomly Sorted Arrays All, Analyze, Level 4, Suggestions 60 23 Minor 41 %
Too Many Array Dimensions All, Analyze 12 2 Minor 0 %
Weak Type With Array All, Analyze, ChangedBehavior 57 8 Minor 0 %
Ambiguous Static All, Analyze, Semantics, ChangedBehavior 22 13 Minor 66 %
Ambiguous Visibilities All, Analyze, Semantics, ChangedBehavior 24 8 Minor 70 %
Avoid Optional Properties All, Analyze, ChangedBehavior 39 11 Major 84 %
Could Be Abstract Class All, Analyze, ClassReview, ChangedBehavior 2 2 Minor 65 %
Class Could Be Final All, Analyze, ClassReview, ChangedBehavior 48 48 Minor 96 %
Method Could Be Static All, Analyze, ClassReview, ChangedBehavior 51 26 Minor 92 %
Could Inject Parameter All, Analyze, ClassReview, ChangedBehavior 7 2 Minor 0 %
Don't Send $this In Constructor All, Analyze, ChangedBehavior 1 1 Minor 41 %
Don't Unset Properties All, Analyze, Top10, php-cs-fixable, CI-checks, ChangedBehavior, CE 1 1 Major 42 %
Empty Classes Analyze, All, Simple, ChangedBehavior 1 1 Minor 60 %
Inherited Property Type Must Match All, Analyze, LintButWontExec, ClassReview, ChangedBehavior 2 1 Minor 0 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2, ChangedBehavior 46 6 Minor 71 %
Mismatch Properties Types All, Analyze, LintButWontExec, ClassReview, ChangedBehavior 8 2 Minor 0 %
New Object Then Immediate Call All, Analyze, ClassReview 82 17 Minor 0 %
No Public Access Analyze, All, ChangedBehavior 64 4 Minor 61 %
Property Could Be Local All, Analyze, ClassReview, ChangedBehavior 16 6 Minor 76 %
Never Used Properties Analyze, All, Simple, Unused, ChangedBehavior 15 2 Minor 71 %
Property Used In One Method Only All, Analyze, ChangedBehavior 36 5 Minor 84 %
Should Use Local Class Analyze, ClearPHP, All, Simple, ChangedBehavior 35 12 Minor 95 %
Undefined Classes Analyze, All, Stubs, Undefined 60 17 Major 91 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks, CompatibilityPHP82, Undefined, ChangedBehavior, CE 343 24 Major 61 %
Undefined static:: Or self:: Analyze, All, Simple, Undefined, ChangedBehavior 2 1 Minor 35 %
Unfinished Object All, Analyze, ClassReview, ChangedBehavior 44 5 Major 0 %
Unresolved Classes Analyze, All, Stubs, ChangedBehavior 23 10 Major 76 %
Unused Classes Dead code, All, Simple, Analyze, Unused, ChangedBehavior 5 5 Major 67 %
Unused Public Methods All, Analyze, ChangedBehavior 141 44 Minor 0 %
Use ::Class Operator All, Analyze, Performances, Simple, CI-checks, ChangedBehavior, CE 1 1 Minor 71 %
Weak Typing All, Analyze, ChangedBehavior 11 5 Minor 47 %
Wrong Typed Property Default All, Analyze, LintButWontExec, ClassReview, CI-checks, CE 5 3 Minor 0 %
Use const Analyze, Coding Conventions, All, Top10, CI-checks, CE 39 1 Minor 54 %
Constant Used Only Once All, Analyze, ChangedBehavior 3 1 Minor 0 %
Undefined Constants Analyze, All, Simple, CompatibilityPHP72, CI-checks, Stubs, Undefined, ChangedBehavior, CE 131 26 Minor 71 %
Converted Exceptions All, Analyze, ChangedBehavior 23 5 Minor 0 %
Throw Raw Exceptions All, Analyze, Suggestions, ChangedBehavior 260 37 Minor 0 %
Uncaught Exceptions Analyze, All, ChangedBehavior 261 38 Minor 84 %
Use Named Boolean In Argument Definition All, Analyze, ChangedBehavior 15 11 Minor 84 %
Callback Function Needs Return All, Analyze, CI-checks, CE 1 1 Major 42 %
Could Make A Function All, Analyze, Suggestions, ChangedBehavior 70 12 Minor 66 %
Deep Definitions Analyze, Appinfo, All, Simple, ChangedBehavior, CE 7 1 Major 13 %
Empty Function Analyze, All, Simple, ChangedBehavior 7 1 Minor 74 %
Hardcoded Passwords Analyze, OneFile, Security, All, Simple, Level 3, ChangedBehavior 38 37 Major 70 %
Method Is Not An If All, Analyze 6 5 Minor 0 %
Never Called Parameter All, Analyze, Suggestions, Rector, Unused 13 8 Minor 92 %
No Boolean As Default All, Analyze 15 11 Minor 84 %
No Default For Referenced Parameter All, Analyze, ChangedBehavior 63 26 Minor 0 %
No Return Used All, Analyze, Suggestions, Level 4, ChangedBehavior 18 7 Minor 69 %
Retyped Reference All, Analyze, Typehints, ChangedBehavior 5 5 Major 0 %
Too Many Local Variables All, Analyze 7 5 Minor 64 %
Unused Parameter Analyze, All, Simple, Unused 7 4 Major 90 %
Unused Returned Value All, Analyze, OneFile, Dead code, Simple, Unused 160 27 Minor 41 %
Useless Referenced Argument All, Analyze, ChangedBehavior 45 26 Minor 58 %
Useless Return Analyze, OneFile, All, Simple, Level 4 2 2 Minor 30 %
Uses Default Values Analyze, All, Simple, CI-checks, ChangedBehavior, CE 583 45 Minor 98 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks, Stubs, ChangedBehavior, CE 2 1 Major 81 %
Wrong Type Returned All, Analyze, ClassReview, CI-checks, LintButWontExec, ChangedBehavior, CE 90 18 Minor 0 %
Forgotten Interface All, Analyze, ChangedBehavior 2 2 Minor 48 %
Unresolved Use Analyze, ClearPHP, All, Simple, ChangedBehavior 15 8 Major 69 %
Logical To in_array() All, Analyze, Level 2, ChangedBehavior 2 2 Minor 67 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks, ChangedBehavior, CE 9 5 Minor 74 %
array_key_exists() Works On Arrays All, CompatibilityPHP74, Analyze, ChangedBehavior, CE 17 2 Minor 0 %
Use random_int() Analyze, Security, All, CompatibilityPHP71, Simple, Level 2, CI-checks, ChangedBehavior, CE 3 3 Major 59 %
Don't Pollute Global Space All, Analyze 46 4 Minor 0 %
False To Array Conversion All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, Analyze, ChangedBehavior 12 4 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks, ChangedBehavior, CE 2 2 Major 76 %
Use === null Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, ChangedBehavior, CE 1 1 Minor 53 %
No Class In Global All, Analyze, CI-checks, ChangedBehavior, CE 3 2 Minor 77 %
No Null For Native PHP Functions All, Analyze, CompatibilityPHP81, Deprecated, ChangedBehavior 10 8 Minor 0 %
Scalar Are Not Arrays All, Analyze, CompatibilityPHP74, CI-checks, ChangedBehavior, CE 319 20 Minor 0 %
Should Use Coalesce Analyze, All, Simple, Suggestions, Level 3, CI-checks, ChangedBehavior, CE 30 6 Major 71 %
Wrong Type For Native PHP Function All, Analyze, CI-checks, ChangedBehavior, CE 19 9 Minor 0 %
Should Use Prepared Statement Analyze, Security, All, Simple, CI-checks, ChangedBehavior, CE 1 1 Major 28 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 1 1 Major 56 %
Comparison Is Always The Same All, Analyze, ChangedBehavior 8 2 Minor 0 %
Bail Out Early All, Analyze, OneFile, Simple, Level 4, ChangedBehavior 20 9 Minor 64 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks, ChangedBehavior, CE 10 7 Minor 77 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1, ChangedBehavior 1 1 Minor 56 %
Check All Types All, Analyze, ChangedBehavior 5 5 Major 69 %
Check Division By Zero All, Analyze, ChangedBehavior 1 1 Minor 0 %
Check JSON All, Analyze, CI-checks, CE 15 9 Major 65 %
Common Alternatives Analyze, All, Simple, ChangedBehavior 5 3 Major 80 %
Concat Empty String All, Analyze, OneFile 2 2 Minor 0 %
Could Use Short Assignation Analyze, OneFile, Performances, All, Simple, CI-checks, Rector, ChangedBehavior, CE 2 1 Minor 63 %
Count() Is Not Negative All, Analyze, ChangedBehavior 1 1 Minor 0 %
Dangling Array References PHP recommendations, Analyze, ClearPHP, All, Simple, Level 1, Top10, CI-checks, ChangedBehavior, CE 1 1 Major 46 %
Don't Reuse Foreach Source All, Analyze, ChangedBehavior 2 2 Minor 0 %
Drop Else After Return All, Analyze, OneFile, Simple, Suggestions, Level 4, CI-checks, ChangedBehavior, CE 2 2 Minor 70 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE 14 9 Minor 66 %
Empty Instructions Dead code, Analyze, All, Simple, ChangedBehavior 7 4 Minor 57 %
Eval() Usage Analyze, Appinfo, Performances, OneFile, ClearPHP, All, Simple, Security, PHP recommendations, ChangedBehavior, CE 2 1 Major 39 %
eval() Without Try Analyze, All, Simple, Level 3, Security, CI-checks, ChangedBehavior, CE 2 1 Critical 36 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, ChangedBehavior, CE 3 1 Major 61 %
foreach() On Object All, Analyze 16 6 Minor 0 %
Htmlentities Calls Analyze, All, Simple, CI-checks, ChangedBehavior, CE 26 2 Major 40 %
Htmlentities Using Default Flag All, Analyze, Simple, CI-checks, ChangedBehavior 26 2 Minor 0 %
Identical Case In Switch All, Analyze, ChangedBehavior 31 7 Minor 0 %
Indices Are Int Or String Analyze, OneFile, All, Simple, CI-checks, ChangedBehavior, CE 5 3 Major 20 %
Infinite Recursion All, Analyze, ChangedBehavior 1 1 Major 0 %
Long Arguments All, Analyze, ChangedBehavior 1 1 Minor 68 %
Max Level Of Nesting All, Analyze, ChangedBehavior 13 4 Minor 0 %
Merge If Then All, Analyze, CI-checks, ChangedBehavior, CE 28 11 Minor 0 %
Mismatched Ternary Alternatives All, Analyze, Suggestions, Level 4, ChangedBehavior 5 3 Major 64 %
Missing Assignation In Branches All, Analyze, ChangedBehavior 54 15 Minor 0 %
Missing Cases In Switch All, Analyze, ChangedBehavior 17 14 Minor 36 %
Mixed Concat And Interpolation All, Coding Conventions, Analyze 5 2 Minor 45 %
Multiple Type Variable All, Analyze, Level 4, ChangedBehavior 1 1 Minor 58 %
Nested Ifthen Analyze, All, RadwellCodes, ChangedBehavior 46 12 Major 84 %
Nested Ternary Analyze, ClearPHP, All, Simple, Level 1, CI-checks, ChangedBehavior, CE 2 2 Major 50 %
No Direct Usage Of Returned Value Analyze, All, Simple, ChangedBehavior 1 1 Major 39 %
No isset() With empty() All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks, ChangedBehavior, CE 1 1 Minor 30 %
No Need For Else All, Analyze, ChangedBehavior 2 2 Minor 74 %
No Null For Index All, Analyze, ChangedBehavior 1 1 Minor 0 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, ChangedBehavior, CE 1 1 Minor 62 %
Variable Is Not A Condition All, Analyze, ChangedBehavior 52 13 Minor 93 %
Non Integer Nor String As Index All, Analyze, ChangedBehavior 3 1 Minor 0 %
Objects Don't Need References Analyze, ClearPHP, OneFile, All, Simple, Level 2, Top10, CI-checks, ChangedBehavior, CE 5 5 Minor 40 %
include_once() Usage Analyze, Appinfo, All, ChangedBehavior, CE 1 1 Minor 73 %
Several Instructions On The Same Line Analyze, All, ChangedBehavior 1 1 Major 56 %
Return True False Analyze, All, Simple, Level 1, CI-checks, ChangedBehavior, CE 2 2 Major 46 %
Should Chain Exception Analyze, All, Simple, CI-checks, ChangedBehavior, CE 24 6 Minor 39 %
Should Use Ternary Operator All, Analyze, OneFile, Simple, CI-checks, ChangedBehavior, CE 16 9 Minor 86 %
Preprocessable Analyze, All, Rector, ChangedBehavior 33 10 Minor 85 %
Static Inclusions All, Analyze, ChangedBehavior 1 1 Minor 0 %
Suspicious Comparison All, Analyze, Level 3, ChangedBehavior 1 1 Major 39 %
Switch Without Default Analyze, ClearPHP, All, Simple, CI-checks, ChangedBehavior, CE 1 1 Major 69 %
Timestamp Difference Analyze, All, Simple, Level 3, CI-checks, ChangedBehavior, CE 1 1 Major 49 %
Unchecked Resources Analyze, ClearPHP, All, Simple, Level 2, CI-checks, ChangedBehavior, CE 1 1 Major 50 %
Use Constant Instead Of Function PHP recommendations, All, Analyze, php-cs-fixable, CI-checks, ChangedBehavior, CE 1 1 Minor 61 %
Use Positive Condition All, Analyze, OneFile, Simple, ChangedBehavior 4 3 Minor 82 %
Useless Coalesce All, Analyze, ChangedBehavior 4 3 Minor 0 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, ChangedBehavior, CE 8 1 Minor 63 %
Useless Parenthesis Analyze, All, Simple, CI-checks, ChangedBehavior, CE 10 4 Minor 81 %
Should Typecast Analyze, OneFile, All, Simple, CI-checks, Rector, ChangedBehavior, CE 13 5 Minor 49 %
String May Hold A Variable Analyze, All, Simple, ChangedBehavior 2 2 Minor 59 %
Missing Some Returntype All, Typehints, Analyze, CI-checks, ChangedBehavior, CE 3 3 Minor 0 %
StandaloneType True False Null All, Appcontent, Analyze, ChangedBehavior 14 6 Minor 0 %
Assigned Twice All, Analyze, ChangedBehavior 31 5 Minor 79 %
Overwritten Literals Analyze, All, ChangedBehavior 37 5 Major 79 %
Recycled Variables All, Analyze 10 1 Minor 0 %
Undefined Variable All, Analyze, CI-checks, Undefined, CE 9 3 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10, ChangedBehavior 39 37 Minor 74 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4, ChangedBehavior, CE 699 65 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple, Unused, ChangedBehavior 26 11 Minor 87 %