PHP Static analysis for public

Label Recipes Issues Files Severity Frequence
Ambiguous Array Index Analyze, All, Simple, Level 2, Semantics, ChangedBehavior 1 1 Minor 10 %
Weak Type With Array All, Analyze, ChangedBehavior 56 15 Minor 0 %
Abstract Or Implements All, Analyze, LintButWontExec, ChangedBehavior 11 11 Major 24 %
Ambiguous Static All, Analyze, Semantics, ChangedBehavior 25 19 Minor 66 %
Ambiguous Visibilities All, Analyze, Semantics, ChangedBehavior 7 7 Minor 70 %
Avoid option arrays in constructors All, Analyze, ClassReview, ChangedBehavior 1 1 Minor 0 %
Avoid Optional Properties All, Analyze, ChangedBehavior 15 7 Major 84 %
Class, Interface, Enum Or Trait With Identical Names Analyze, All, ChangedBehavior 2 2 Minor 19 %
Clone With Non-Object All, Analyze, LintButWontExec, ChangedBehavior 1 1 Minor 33 %
Could Be Abstract Class All, Analyze, ClassReview, ChangedBehavior 2 2 Minor 65 %
Class Could Be Final All, Analyze, ClassReview, ChangedBehavior 56 56 Minor 96 %
Method Could Be Static All, Analyze, ClassReview, ChangedBehavior 29 12 Minor 92 %
Could Inject Parameter All, Analyze, ClassReview, ChangedBehavior 29 5 Minor 0 %
No Direct Call To Magic Method Analyze, All, Level 2, CI-checks, CE 1 1 Major 43 %
Empty Classes Analyze, All, Simple, ChangedBehavior 1 1 Minor 60 %
Implicit Nullable Type All, Analyze, ClassReview, ChangedBehavior 5 2 Minor 0 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2, ChangedBehavior 5 5 Minor 71 %
Mismatch Properties Types All, Analyze, LintButWontExec, ClassReview, ChangedBehavior 2 2 Minor 0 %
New Object Then Immediate Call All, Analyze, ClassReview 16 10 Minor 0 %
No Public Access Analyze, All, ChangedBehavior 27 15 Minor 61 %
Property Could Be Local All, Analyze, ClassReview, ChangedBehavior 8 7 Minor 76 %
Same Name For Property And Method All, Analyze, ClassReview, Semantics, ChangedBehavior 26 6 Minor 0 %
Never Used Properties Analyze, All, Simple, Unused, ChangedBehavior 4 2 Minor 71 %
Property Used In One Method Only All, Analyze, ChangedBehavior 18 9 Minor 84 %
Scalar Or Object Property All, Analyze 1 1 Minor 32 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview, ChangedBehavior 17 4 Minor 63 %
Should Use Local Class Analyze, ClearPHP, All, Simple, ChangedBehavior 73 28 Minor 95 %
Undefined Classes Analyze, All, Stubs, Undefined 15 6 Major 91 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks, CompatibilityPHP82, Undefined, ChangedBehavior, CE 28 3 Major 61 %
Undefined static:: Or self:: Analyze, All, Simple, Undefined, ChangedBehavior 4 1 Minor 35 %
Unfinished Object All, Analyze, ClassReview, ChangedBehavior 20 9 Major 0 %
Unresolved Classes Analyze, All, Stubs, ChangedBehavior 1 1 Major 76 %
Unused Public Methods All, Analyze, ChangedBehavior 133 42 Minor 0 %
Use Instanceof Analyze, All, Simple, CI-checks, ChangedBehavior, CE 1 1 Major 63 %
Weak Typing All, Analyze, ChangedBehavior 1 1 Minor 47 %
Wrong Typed Property Default All, Analyze, LintButWontExec, ClassReview, CI-checks, CE 5 3 Minor 0 %
Constant Used Only Once All, Analyze, ChangedBehavior 8 4 Minor 0 %
Catch With Undefined Variable All, Analyze, Undefined, ChangedBehavior 4 1 Minor 0 %
Converted Exceptions All, Analyze, ChangedBehavior 7 5 Minor 0 %
Throw Raw Exceptions All, Analyze, Suggestions, ChangedBehavior 1 1 Minor 0 %
Uncaught Exceptions Analyze, All, ChangedBehavior 53 14 Minor 84 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple, ChangedBehavior 1 1 Minor 45 %
Useless Try All, Analyze, ChangedBehavior 10 6 Minor 0 %
Native Alias Functions Usage Analyze, ClearPHP, OneFile, All, Simple, Level 1, CI-checks, ChangedBehavior, CE 5 4 Minor 20 %
Use Named Boolean In Argument Definition All, Analyze, ChangedBehavior 10 8 Minor 84 %
Hardcoded Passwords Analyze, OneFile, Security, All, Simple, Level 3, ChangedBehavior 4 3 Major 70 %
Insufficient Type All, Analyze, Typechecks, ChangedBehavior 3 1 Major 43 %
Method Is Not An If All, Analyze 19 10 Minor 0 %
Mismatched Default Arguments All, Analyze, Typechecks, ChangedBehavior 1 1 Minor 80 %
Mismatched Type All, Analyze, Typechecks, ChangedBehavior 32 10 Major 66 %
Modified Typed Parameter All, Analyze, ClassReview, ChangedBehavior 4 3 Minor 0 %
Never Called Parameter All, Analyze, Suggestions, Rector, Unused 7 6 Minor 92 %
No Boolean As Default All, Analyze 8 7 Minor 84 %
No Return Used All, Analyze, Suggestions, Level 4, ChangedBehavior 7 3 Minor 69 %
Too Many Local Variables All, Analyze 1 1 Minor 64 %
Unknown Parameter Name All, Analyze, CI-checks, ChangedBehavior, CE 3 3 Minor 0 %
Unused Parameter Analyze, All, Simple, Unused 6 3 Major 90 %
Unused Returned Value All, Analyze, OneFile, Dead code, Simple, Unused 18 6 Minor 41 %
Uses Default Values Analyze, All, Simple, CI-checks, ChangedBehavior, CE 192 36 Minor 98 %
Methods Without Return All, Analyze 2 2 Minor 95 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks, Stubs, ChangedBehavior, CE 7 5 Major 81 %
Wrong Type Returned All, Analyze, ClassReview, CI-checks, LintButWontExec, ChangedBehavior, CE 49 13 Minor 0 %
Wrong Type With Call All, Analyze, Typechecks, CI-checks, ChangedBehavior, CE 33 10 Minor 0 %
Forgotten Interface All, Analyze, ChangedBehavior 1 1 Minor 48 %
Undefined Interfaces Analyze, All, CI-checks, LintButWontExec, Undefined, ChangedBehavior, CE 6 1 Major 72 %
Should Make Alias Analyze, OneFile, All, Simple, CI-checks, ChangedBehavior, CE 52 13 Minor 46 %
Unresolved Use Analyze, ClearPHP, All, Simple, ChangedBehavior 3 3 Major 69 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, ChangedBehavior, CE 1 1 Major 57 %
Logical To in_array All, Analyze, Level 2, ChangedBehavior 6 6 Minor 67 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks, ChangedBehavior, CE 4 3 Minor 74 %
Assumptions All, Analyze, ChangedBehavior 5 5 Minor 0 %
Don't Pollute Global Space All, Analyze 11 1 Minor 0 %
False To Array Conversion All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, Analyze, ChangedBehavior 5 2 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks, ChangedBehavior, CE 2 1 Major 76 %
Is_A() With String All, Analyze, Simple, Rector, CI-checks, ChangedBehavior, CE 1 1 Minor 0 %
Possible Missing Subpattern All, Analyze, Top10, CI-checks, ChangedBehavior, CE 1 1 Minor 45 %
No Class In Global All, Analyze, CI-checks, ChangedBehavior, CE 11 1 Minor 77 %
No Null For Native PHP Functions All, Analyze, CompatibilityPHP81, Deprecated, ChangedBehavior 5 4 Minor 0 %
Wrong Attribute Configuration All, Analyze, ChangedBehavior 1 1 Minor 0 %
Wrong Type For Native PHP Function All, Analyze, CI-checks, ChangedBehavior, CE 20 12 Minor 0 %
Don't Echo Error All, Analyze, Security, Simple, Level 1, CI-checks, ChangedBehavior, CE 2 1 Critical 35 %
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 7 2 Minor 0 %
Bail Out Early All, Analyze, OneFile, Simple, Level 4, ChangedBehavior 12 10 Minor 64 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks, ChangedBehavior, CE 9 7 Minor 77 %
Catch Overwrite Variable Analyze, ClearPHP, All, Simple, ChangedBehavior 2 1 Minor 25 %
Check All Types All, Analyze, ChangedBehavior 4 3 Major 69 %
Check JSON All, Analyze, CI-checks, CE 4 3 Major 65 %
Coalesce And Concat All, Analyze, CI-checks, ChangedBehavior, CE 2 1 Minor 0 %
Common Alternatives Analyze, All, Simple, ChangedBehavior 1 1 Major 80 %
Don't Change The Blind Var All, Analyze, ChangedBehavior 12 8 Minor 73 %
Drop Else After Return All, Analyze, OneFile, Simple, Suggestions, Level 4, CI-checks, ChangedBehavior, CE 2 2 Minor 70 %
Echo With Concat Performances, Analyze, All, Simple, Suggestions, ChangedBehavior 2 1 Minor 60 %
Empty Json Error All, Analyze, ChangedBehavior 1 1 Minor 0 %
Empty Instructions Dead code, Analyze, All, Simple, ChangedBehavior 1 1 Minor 57 %
Empty Try Catch Analyze, All, Level 3 3 2 Minor 49 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, ChangedBehavior, CE 2 1 Major 61 %
Indices Are Int Or String Analyze, OneFile, All, Simple, CI-checks, ChangedBehavior, CE 1 1 Major 20 %
list() May Omit Variables Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE 1 1 Minor 37 %
Long Arguments All, Analyze, ChangedBehavior 1 1 Minor 68 %
Max Level Of Nesting All, Analyze, ChangedBehavior 2 1 Minor 0 %
Merge If Then All, Analyze, CI-checks, ChangedBehavior, CE 1 1 Minor 0 %
Mismatched Ternary Alternatives All, Analyze, Suggestions, Level 4, ChangedBehavior 1 1 Major 64 %
Missing Assignation In Branches All, Analyze, ChangedBehavior 24 13 Minor 0 %
Modernize Empty With Expression All, Analyze, OneFile, Simple, ChangedBehavior 5 2 Minor 63 %
Multiple Type Variable All, Analyze, Level 4, ChangedBehavior 1 1 Minor 58 %
No Choice Analyze, All, Simple, Level 2, Top10, CI-checks, Rector, ChangedBehavior, CE 13 4 Major 42 %
No Need For Else All, Analyze, ChangedBehavior 2 2 Minor 74 %
No Need For Triple Equal All, Analyze, ChangedBehavior 1 1 Minor 0 %
No Null For Index All, Analyze, ChangedBehavior 2 1 Minor 0 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, ChangedBehavior, CE 4 4 Minor 62 %
Avoid Substr() One Analyze, Performances, All, CompatibilityPHP71, Simple, Level 2, Suggestions, Top10, CI-checks, ChangedBehavior, CE 1 1 Minor 58 %
Variable Is Not A Condition All, Analyze, ChangedBehavior 89 21 Minor 93 %
Non Integer Nor String As Index All, Analyze, ChangedBehavior 1 1 Minor 0 %
@ Operator Appinfo, ClearPHP, All, Analyze, Performances, CI-checks, ChangedBehavior, CE 16 8 Minor 65 %
include_once() Usage Analyze, Appinfo, All, ChangedBehavior, CE 1 1 Minor 73 %
Should Chain Exception Analyze, All, Simple, CI-checks, ChangedBehavior, CE 7 5 Minor 39 %
Should Use Ternary Operator All, Analyze, OneFile, Simple, CI-checks, ChangedBehavior, CE 18 9 Minor 86 %
Preprocessable Analyze, All, Rector, ChangedBehavior 11 7 Minor 85 %
Static Inclusions All, Analyze, ChangedBehavior 2 2 Minor 0 %
Switch To Switch Analyze, All, RadwellCodes, Simple, ChangedBehavior 1 1 Minor 58 %
Test Then Cast All, Analyze, ChangedBehavior 1 1 Major 34 %
Unpreprocessed Values Analyze, OneFile, ClearPHP, All, Simple, Performances, ChangedBehavior 3 1 Minor 30 %
Use Positive Condition All, Analyze, OneFile, Simple, ChangedBehavior 1 1 Minor 82 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, ChangedBehavior, CE 12 3 Minor 63 %
Useless Null Coalesce All, Analyze, Typehints, ChangedBehavior 3 3 Minor 0 %
Useless Parenthesis Analyze, All, Simple, CI-checks, ChangedBehavior, CE 4 3 Minor 81 %
Cannot Call Static Trait Method Directly All, Analyze, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior 3 1 Minor 0 %
Dependant Trait Analyze, All, Level 3, ChangedBehavior 5 5 Minor 28 %
Trait Is Not A Type All, Analyze, ClassReview, Typehints 6 1 Minor 0 %
Should Typecast Analyze, OneFile, All, Simple, CI-checks, Rector, ChangedBehavior, CE 8 6 Minor 49 %
Missing Some Returntype All, Typehints, Analyze, CI-checks, ChangedBehavior, CE 15 8 Minor 0 %
StandaloneType True False Null All, Appcontent, Analyze, ChangedBehavior 71 26 Minor 0 %
Wrong Type With Default All, Analyze, LintButWontExec, ClassReview, ChangedBehavior 17 5 Minor 0 %
Assigned Twice All, Analyze, ChangedBehavior 23 5 Minor 79 %
Overwritten Literals Analyze, All, ChangedBehavior 29 6 Major 79 %
Recycled Variables All, Analyze 2 1 Minor 0 %
Used Once Variables Analyze, OneFile, All, Simple, Top10, ChangedBehavior 1 1 Minor 74 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4, ChangedBehavior, CE 624 37 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple, Unused, ChangedBehavior 6 4 Minor 87 %