PHP Static analysis for grav

Label Recipes Issues Files Severity Frequence
Ambiguous Array Index Analyze, All, Simple, Level 2, Semantics, ChangedBehavior 84 25 Minor 10 %
Append And Assign Arrays Analyze, Internal, All, ChangedBehavior 3 3 Minor 0 %
Null Or Boolean Arrays Analyze, All 103 18 Minor 0 %
Randomly Sorted Arrays Analyze, All, Suggestions, Level 4 2 1 Minor 41 %
Too Many Array Dimensions Analyze, All 11 5 Minor 0 %
Weak Type With Array Analyze, All, ChangedBehavior 912 132 Minor 0 %
Abstract Or Implements Analyze, All, LintButWontExec, ChangedBehavior 54 53 Major 24 %
Accessing Private Analyze, All, Simple 4 2 Major 17 %
Access Protected Structures Analyze, All, Simple, IsPHP, IsStub, IsExt 7 1 Major 17 %
Ambiguous Static Analyze, All, Semantics 511 210 Minor 66 %
Ambiguous Visibilities Analyze, All, Semantics, ChangedBehavior 336 137 Minor 70 %
Avoid option arrays in constructors Analyze, All, ClassReview 4 4 Minor 0 %
Avoid Optional Properties Analyze, All 214 69 Major 84 %
Clone With Non-Object Analyze, All, LintButWontExec 3 3 Minor 33 %
Const Visibility Usage Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All 42 13 Minor 24 %
Could Be Abstract Class Analyze, All, ClassReview 26 26 Minor 65 %
Class Could Be Final Analyze, All, ClassReview 264 263 Minor 96 %
Method Could Be Static Analyze, All, ClassReview 328 147 Minor 92 %
Could Inject Parameter Analyze, All, ClassReview, ChangedBehavior 144 68 Minor 0 %
Cyclic References Analyze, All, ClassReview 5 3 Minor 0 %
Dependant Abstract Classes Analyze, All, ClassReview 2 2 Minor 0 %
Different Argument Counts Analyze, All, ClassReview 23 15 Minor 0 %
No Direct Call To Magic Method Analyze, All, Level 2, CI-checks, CE 68 15 Major 43 %
Don't Send $this In Constructor Analyze, All 3 3 Minor 41 %
Don't Unset Properties Analyze, All, Top10, php-cs-fixable, CI-checks, CE 6 6 Major 42 %
Empty Classes Analyze, All, Simple 1 1 Minor 60 %
Hidden Nullable Typehint Analyze, All, ClassReview 333 114 Minor 0 %
Incompatible Signature Methods With Covariance Analyze, All 51 41 Critical 0 %
Inherited Property Type Must Match Analyze, All, LintButWontExec, ClassReview 12 7 Minor 0 %
Instantiating Abstract Class Analyze, All, Simple 1 1 Major 13 %
Locally Unused Property Dead code, All, Simple, Unused 99 49 Minor 76 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2 75 33 Minor 71 %
Method Signature Must Be Compatible Analyze, All, LintButWontExec 76 48 Critical 53 %
Mismatch Properties Typehints Analyze, All, LintButWontExec, ClassReview 51 28 Minor 0 %
Missing Abstract Method Analyze, All, ClassReview 31 10 Minor 0 %
Multiple Class Declarations Analyze, All, Simple, CI-checks, CE 2 1 Major 29 %
Multiple Identical Trait Or Interface Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 33 32 Minor 0 %
New Object Then Immediate Call Analyze, All, ClassReview 75 51 Minor 0 %
No Public Access Analyze, All 37 20 Minor 61 %
Non Nullable Getters Analyze, All, ClassReview 13 10 Minor 0 %
Forgotten Visibility Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 4 2 Minor 42 %
Parent First Analyze, All, Suggestions 36 36 Minor 56 %
Parent Is Not Static Analyze, All, ClassReview 7 2 Major 0 %
Property Could Be Local Analyze, All, ClassReview 57 33 Minor 76 %
Same Name For Property And Method Analyze, All, ClassReview, Semantics 205 31 Minor 0 %
Never Used Properties Analyze, All, Simple, Unused 52 26 Minor 71 %
Property Used In One Method Only Analyze, All 152 86 Minor 84 %
Parent, Static Or Self Outside Class Analyze, All, Simple, ChangedBehavior 4 1 Major 21 %
Scalar Or Object Property Analyze, All 4 3 Minor 32 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview 5 5 Minor 63 %
Should Use Local Class Analyze, ClearPHP, All, Simple 502 165 Minor 95 %
Static Methods Called From Object Analyze, All, Simple, CI-checks, CE, IsPHP, IsStub, IsExt 6 5 Minor 50 %
Swapped Arguments Analyze, All 1 1 Critical 0 %
$this Is Not An Array Analyze, All, ChangedBehavior 37 3 Major 2 %
Too Many Dereferencing Analyze, All, ChangedBehavior 13 10 Minor 0 %
Wrong Access Style to Property Analyze, All, Level 2, ClassReview, CI-checks, CE 5 3 Critical 37 %
Undefined Classes Analyze, All, Stubs, Undefined 4321 388 Major 91 %
Undefined Class Constants Analyze, All, LintButWontExec, CI-checks, CE, Stubs, ChangedBehavior, Undefined 178 46 Major 62 %
Undefined Parent Analyze, All, Simple, Undefined 8 5 Minor 45 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks, CE, CompatibilityPHP82, ChangedBehavior, Undefined 273 39 Major 61 %
Undefined static:: Or self:: Analyze, All, Simple, ChangedBehavior, Undefined 2 1 Minor 35 %
Undefined ::class Analyze, All, CI-checks, CE, ChangedBehavior, Undefined 4 4 Major 36 %
Unfinished Object Analyze, All, ClassReview 122 68 Major 0 %
Unreachable Method Analyze, Dead code, All, ClassReview, Unused, ChangedBehavior 2 2 Minor 0 %
Unresolved Catch Dead code, ClearPHP, All, ChangedBehavior 16 9 Major 52 %
Unresolved Classes Analyze, All, Stubs, ChangedBehavior 380 74 Major 76 %
Unresolved Instanceof Analyze, Dead code, ClearPHP, All, Simple, Top10, ChangedBehavior 20 14 Major 48 %
Unused Classes Analyze, Dead code, All, Simple, Unused, ChangedBehavior 13 13 Major 67 %
Unused Class Constant Analyze, All, ClassReview, Unused, ChangedBehavior 6 2 Minor 0 %
Unused Methods Dead code, All, Simple, Unused, ChangedBehavior 800 237 Minor 96 %
Unused Private Methods Dead code, OneFile, All, Simple, Unused, ChangedBehavior 5 3 Minor 50 %
Unused Private Properties Dead code, OneFile, All, Simple, Unused 6 4 Minor 51 %
Unused Protected Methods Dead code, All, Unused, ChangedBehavior 349 101 Major 68 %
Unused Public Methods Analyze, All, ChangedBehavior 2131 358 Minor 0 %
Use Instanceof Analyze, All, Simple, CI-checks, CE, ChangedBehavior 34 20 Major 63 %
Used Once Property Analyze, All, ChangedBehavior 14 11 Minor 74 %
Useless Abstract Class Analyze, All, Simple, ChangedBehavior 5 5 Minor 33 %
Useless Constructor Analyze, All, Simple, Level 3, ChangedBehavior 1 1 Minor 41 %
Useless Method Analyze, All 10 6 Minor 0 %
Weak Typing Analyze, All, ChangedBehavior 18 15 Minor 47 %
Wrong Typed Property Default Analyze, All, LintButWontExec, ClassReview, CI-checks, CE 47 30 Minor 0 %
Use const Analyze, Coding Conventions, All, Top10, CI-checks, CE 34 5 Minor 54 %
Constant Used Only Once Analyze, All 22 16 Minor 0 %
Multiple Constant Definition Analyze, All, Simple, CI-checks, CE, ChangedBehavior 8 5 Minor 41 %
Undefined Constants stubs 19 4 Minor 71 %
Unused Constants Dead code, All, Simple, Unused, ChangedBehavior 18 1 Minor 39 %
Could Be A Constant All, Dump 186 82 Minor 0 %
Catch With Undefined Variable Analyze, All, ChangedBehavior, Undefined 19 8 Minor 0 %
Undefined Caught Exceptions Dead code, All, ChangedBehavior 24 13 None 53 %
Caught Exceptions All, Dump, ChangedBehavior 113 63 None 100 %
Converted Exceptions Analyze, All 31 19 Minor 0 %
Could Drop Variable Dead code, All, Suggestions, ChangedBehavior 24 22 Minor 0 %
Forgotten Thrown Analyze, All, ChangedBehavior 5 4 Minor 20 %
Multiple Exceptions Catch() Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 1 1 Major 10 %
Throw Raw Exceptions Analyze, All, Suggestions 317 107 Minor 0 %
Try Without Catch All, Dump, ChangedBehavior 1 1 Minor 0 %
Uncaught Exceptions Analyze, All, ChangedBehavior 349 118 Minor 84 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple, ChangedBehavior 6 6 Minor 45 %
Useless Try Analyze, All, ChangedBehavior 47 32 Minor 0 %
Native Alias Functions Usage Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 72 31 Minor 20 %
Use Named Boolean In Argument Definition Analyze, All, ChangedBehavior 279 110 Minor 84 %
Could Make A Function Analyze, All, Suggestions, ChangedBehavior 493 117 Minor 66 %
Deep Definitions Analyze, Appinfo, All, Simple, CE 3 2 Major 13 %
Don't Collect Void Analyze, All, IsPHP, IsStub, IsExt 208 50 Minor 0 %
Empty Function Analyze, All, Simple 18 14 Minor 74 %
Hardcoded Passwords Analyze, Security, OneFile, All, Simple, Level 3 173 21 Major 70 %
Insufficient Typehint Analyze, All, Typechecks 50 17 Major 43 %
Method Is Not An If Analyze, All 60 46 Minor 0 %
Mismatch Parameter Name Analyze, All, CompatibilityPHP80, CE, ChangedBehavior 9 7 Minor 0 %
Mismatch Type And Default Analyze, All, LintButWontExec, Typechecks, ChangedBehavior 1 1 Critical 8 %
Mismatched Default Arguments Analyze, All, Typechecks 116 35 Minor 80 %
Mismatched Typehint Analyze, All, Typechecks 229 77 Major 66 %
Modified Typed Parameter Analyze, All, ClassReview 25 21 Minor 0 %
Must Return Methods Analyze, All, Simple, Level 2, LintButWontExec, CI-checks, CE, ChangedBehavior 2 2 Major 34 %
Never Called Parameter Analyze, All, Suggestions, Rector, Unused 132 67 Minor 92 %
No Boolean As Default Analyze, All 265 108 Minor 84 %
No Default For Referenced Parameter Analyze, All 6 6 Minor 0 %
No Return Used Analyze, All, Suggestions, Level 4 140 61 Minor 69 %
Only Variable Passed By Reference Analyze, All, IsPHP, IsStub, IsExt 2524 278 Critical 43 %
Too Many Local Variables Analyze, All 33 28 Minor 64 %
Class-typed References Analyze, All, CI-checks, CE 3 3 Minor 37 %
Undefined Functions stubs 12 6 Major 68 %
Unused Parameter Analyze, All, Simple, Unused 122 54 Major 90 %
Unused Returned Value Analyze, Dead code, OneFile, All, Simple, Unused 367 91 Minor 41 %
Use Constant As Arguments Analyze, All, Simple, CI-checks, CE 5 5 Major 30 %
Useless Referenced Argument Analyze, All, ChangedBehavior 9 4 Minor 58 %
Useless Type Check Dead code, OneFile, All 5 5 Minor 0 %
Uses Default Values Analyze, All, Simple, CI-checks, CE, IsPHP, IsStub, IsExt 3240 284 Minor 98 %
Using Deprecated Method Analyze, All, Attributes 62 27 Minor 0 %
Wrong Argument Type Analyze, All, Typechecks 42 26 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks, CE, Stubs, IsPHP, IsStub, IsExt 44 31 Major 81 %
Wrong Type Returned Analyze, All, LintButWontExec, ClassReview, CI-checks, CE 950 213 Minor 0 %
Wrong Type With Call Analyze, All, Typechecks, CI-checks, CE 813 158 Minor 0 %
Already Parents Interface Analyze, All, Suggestions, Level 3, ChangedBehavior 33 32 Minor 26 %
Can't Implement Traversable Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior 4 4 Minor 0 %
Forgotten Interface Analyze, All, ChangedBehavior 23 23 Minor 48 %
Empty Interfaces Analyze, All, Simple, ChangedBehavior 8 8 Minor 41 %
Interfaces Is Not Implemented Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior 55 54 Minor 0 %
Interfaces Don't Ensure Properties Analyze, All, ClassReview, ChangedBehavior 9 3 Minor 0 %
Repeated Interface Analyze, All, LintButWontExec, ChangedBehavior 40 39 Minor 0 %
Undefined Interfaces Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 232 97 Major 72 %
Unused Interfaces Dead code, All, Simple, Suggestions, Level 2, Unused, ChangedBehavior 5 5 Minor 26 %
Useless Interfaces Analyze, ClearPHP, All, Simple, ClassReview, Typechecks, ChangedBehavior 40 40 Minor 59 %
Hidden Use Expression Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 26 8 Minor 23 %
Multiple Alias Definitions Analyze, All, Simple, CI-checks, CE, ChangedBehavior 386 220 Minor 44 %
Overload Existing Names Analyze, All, Semantics, IsPHP, IsStub, IsExt 1 1 Minor 0 %
Should Make Alias Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 25 15 Minor 46 %
Unresolved Use Analyze, ClearPHP, All, Simple, ChangedBehavior 530 195 Major 69 %
Unused Use Dead code, ClearPHP, All, Simple, php-cs-fixable, Unused, ChangedBehavior 473 198 Major 60 %
Use With Fully Qualified Name Analyze, Coding Conventions, PHP recommendations, All, Simple, ChangedBehavior 3 3 Minor 18 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior 11 9 Major 57 %
Logical To in_array Analyze, All, Level 2, ChangedBehavior 21 13 Minor 67 %
Memoize MagicCall Analyze, All, ClassReview, ChangedBehavior 5 3 Minor 0 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks, CE, ChangedBehavior 44 26 Minor 74 %
strpos() Too Much Analyze, All, CI-checks, CE, ChangedBehavior 35 25 Minor 49 %
array_key_exists() Works On Arrays Analyze, All, CompatibilityPHP74, CE, ChangedBehavior 32 17 Minor 0 %
Assumptions Analyze, All, ChangedBehavior 138 64 Minor 0 %
Avoid get_object_vars() All, CompatibilityPHP74, CompatibilityPHP80, ChangedBehavior 5 4 Minor 0 %
Use random_int() Analyze, Security, CompatibilityPHP71, All, Simple, Level 2, CI-checks, CE, ChangedBehavior 9 8 Major 59 %
Constant Scalar Expression Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, ChangedBehavior 474 177 Major 0 %
Deprecated PHP Functions Analyze, All, CI-checks, CE 1 1 Major 23 %
Don't Pollute Global Space Analyze, All 50 9 Minor 0 %
Exit Without Argument Analyze, All, ChangedBehavior 6 4 Minor 0 %
False To Array Conversion Analyze, All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82 46 10 Minor 0 %
Wrong fopen() Mode Analyze, All, CI-checks, CE, ChangedBehavior 1 1 Major 17 %
Include Variables All, Dump 15 12 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 137 46 Major 76 %
Use === null Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, CE, ChangedBehavior 1 1 Minor 53 %
PHP Native Interfaces and Return Type Analyze, All, LintButWontExec, CompatibilityPHP81, Deprecated, ChangedBehavior 19 14 Minor 0 %
List Short Syntax Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Internal, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 59 30 Major 17 %
List With Keys Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Appcontent, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 32 24 Major 34 %
Possible Missing Subpattern Analyze, All, Top10, CI-checks, CE, ChangedBehavior 2 2 Minor 45 %
PHP Native Class Type Compatibility Analyze, All, CompatibilityPHP81, ChangedBehavior 88 38 Major 0 %
No Class In Global Analyze, All, CI-checks, CE, ChangedBehavior 2 2 Minor 77 %
No Null For Native PHP Functions Analyze, All, CompatibilityPHP81, Deprecated, ChangedBehavior 298 78 Minor 0 %
Php7 Relaxed Keyword Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE 2 2 Major 28 %
PHP 80 Named Parameter Variadic All, CompatibilityPHP80, CE 1 1 Minor 0 %
Php 8.0 Only TypeHints Appinfo, CompatibilityPHP56, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior 72 44 Minor 0 %
Scalar Are Not Arrays Analyze, All, CompatibilityPHP74, CI-checks, CE, ChangedBehavior 114 28 Minor 0 %
String Int Comparison All, CompatibilityPHP80, ChangedBehavior 29 13 Minor 0 %
Strtr Arguments Analyze, All, CI-checks, CE 1 1 Major 7 %
Too Many Native Calls Analyze, All, IsPHP, IsExt 3 2 Minor 49 %
Typed Property Usage Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CE 580 193 Minor 6 %
Use Nullable Type Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE 660 180 Major 90 %
Use PHP Object API Analyze, ClearPHP, All, Simple, CI-checks, CE 2 1 Minor 27 %
Avoid Using stdClass Analyze, OneFile, All, Simple, Level 4 10 10 Minor 46 %
Wrong Type For Native PHP Function Analyze, All, CI-checks, CE 256 98 Minor 0 %
Always Anchor Regex Security, All 19 18 Major 65 %
Avoid Those Hash Functions Security, All 78 35 Major 62 %
Direct Injection Security, All, ChangedBehavior 2 2 Major 51 %
Don't Echo Error Analyze, Security, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 1 1 Critical 35 %
Encoded Simple Letters Security, All, ChangedBehavior 3 1 Minor 41 %
filter_input() As A Source Security, All, ChangedBehavior 1 1 Minor 7 %
Filter Not Raw Security, All, ChangedBehavior 1 1 Minor 0 %
Indirect Injection Security, All, ChangedBehavior 2 2 Critical 42 %
Keep Files Access Restricted Security, All, ChangedBehavior 4 3 Minor 0 %
No Net For Xml Load Security, All, ChangedBehavior 3 3 Major 51 %
Avoid sleep()/usleep() Security, All, ChangedBehavior 1 1 Minor 41 %
Set Cookie Safe Arguments Security, All, ChangedBehavior 2 2 Major 25 %
Adding Zero Dump 2 2 Minor 69 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 6 5 Major 56 %
Comparison Is Always The Same Analyze, All, ChangedBehavior 303 98 Minor 0 %
Bail Out Early Analyze, OneFile, All, Simple, Level 4 189 94 Minor 64 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks, CE 32 16 Minor 77 %
Buried Assignation Analyze, All 33 25 Minor 84 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1 6 6 Minor 56 %
Casting Ternary Analyze, OneFile, All, CI-checks, CE 2 2 Major 0 %
Check All Types Analyze, All 80 39 Major 69 %
Check Division By Zero Analyze, All, ChangedBehavior 13 7 Minor 0 %
Check JSON Analyze, All, CI-checks, CE 59 30 Major 65 %
Coalesce And Concat Analyze, All, CI-checks, CE 2 2 Minor 0 %
Coalesce And Ternary Operators Order Analyze, All, ChangedBehavior 2 2 Minor 0 %
Common Alternatives Analyze, All, Simple 40 29 Major 80 %
Could Be Else Analyze, All 4 4 Minor 49 %
Could Use Short Assignation Analyze, Performances, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior 31 21 Minor 63 %
Dangling Array References Analyze, PHP recommendations, ClearPHP, All, Simple, Level 1, Top10, CI-checks, CE 4 4 Major 46 %
Default Then Discard Analyze, All, Readability 4 4 Minor 0 %
Don't Change The Blind Var Analyze, All 72 40 Minor 73 %
Don't Mix ++ Analyze, All 14 9 Minor 56 %
Don't Reuse Foreach Source Analyze, All 2 2 Minor 0 %
Double Assignation Analyze, All 7 6 Major 59 %
Double Checks Analyze, All 16 11 Minor 0 %
Double Object Assignation Analyze, All, ClassReview, ChangedBehavior 2 1 Minor 0 %
Drop Else After Return Analyze, OneFile, All, Simple, Suggestions, Level 4, CI-checks, CE 15 11 Minor 70 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE 16 9 Minor 66 %
Empty Blocks Analyze, All, Simple, CI-checks, CE 3 3 Minor 51 %
Empty Instructions Analyze, Dead code, All, Simple 1 1 Minor 57 %
Empty Try Catch Analyze, All, Level 3 10 9 Minor 49 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, CE 12 8 Major 61 %
Foreach Reference Is Not Modified Analyze, All, Simple, CI-checks, CE 1 1 Minor 24 %
Htmlentities Calls Analyze, All, Simple, CI-checks, CE 6 2 Major 40 %
Htmlentities Using Default Flag Analyze, All, Simple, CI-checks, ChangedBehavior 8 3 Minor 0 %
Identical Case In Switch Analyze, All, ChangedBehavior 21 3 Minor 0 %
Identical Consecutive Expression Analyze, All 16 10 Minor 59 %
If With Same Conditions Analyze, All, Simple, CI-checks, CE 7 7 Major 47 %
Iffectations Analyze, All 36 29 Minor 80 %
Implied If Analyze, ClearPHP, All, Simple, Rector, CI-checks, CE 15 7 Major 33 %
Implode() Arguments Order Analyze, All, CI-checks, CE, ChangedBehavior 2 2 Minor 0 %
Indices Are Int Or String Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 46 20 Major 20 %
Infinite Recursion Analyze, All 7 7 Major 0 %
Invalid Cast Analyze, All, LintButWontExec, ChangedBehavior 1 1 Minor 0 %
list() May Omit Variables Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE 2 2 Minor 37 %
Long Arguments Analyze, All 40 23 Minor 68 %
Max Level Of Nesting Analyze, All 45 35 Minor 0 %
Merge If Then Analyze, All, CI-checks, CE, ChangedBehavior 58 37 Minor 0 %
Mismatched Ternary Alternatives Analyze, All, Suggestions, Level 4 25 16 Major 64 %
Missing Assignation In Branches Analyze, All, ChangedBehavior 314 109 Minor 0 %
Missing Cases In Switch Analyze, All 2 2 Minor 36 %
Maybe Missing New Analyze, All, ChangedBehavior 12 1 Critical 57 %
Mixed Concat And Interpolation Analyze, Coding Conventions, All 8 5 Minor 45 %
Modernize Empty With Expression Analyze, OneFile, All, Simple 48 25 Minor 63 %
Multiple Type Cases In Switch All, CompatibilityPHP80 1 1 Minor 0 %
Multiple Type Variable Analyze, All, Level 4 4 4 Minor 58 %
Nested Ifthen Analyze, All, RadwellCodes 169 61 Major 84 %
Nested Ternary Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 14 10 Major 50 %
Don't Change Incomings Analyze, All 5 1 Minor 44 %
No Choice Analyze, All, Simple, Level 2, Top10, Rector, CI-checks, CE, ChangedBehavior 286 86 Major 42 %
No Hardcoded Hash Analyze, Security, All, Simple 5 2 Critical 45 %
No Hardcoded Path Analyze, ClearPHP, All, Simple 2 1 Major 35 %
No isset() With empty() Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE 1 1 Minor 30 %
No Max On Empty Array All, CompatibilityPHP80, ChangedBehavior 25 14 Minor 0 %
No Need For Else Analyze, All 24 18 Minor 74 %
No Need For Triple Equal Analyze, All 8 6 Minor 0 %
No Null For Index Analyze, All, ChangedBehavior 108 26 Minor 0 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior 9 4 Minor 62 %
Avoid Substr() One Analyze, Performances, CompatibilityPHP71, All, Simple, Suggestions, Level 2, Top10, CI-checks, CE 2 1 Minor 58 %
Variable Is Not A Condition Analyze, All 1104 185 Minor 93 %
Non Integer Nor String As Index Analyze, All, ChangedBehavior 26 12 Minor 0 %
@ Operator Analyze, Appinfo, Performances, ClearPHP, All, CI-checks, CE 80 27 Minor 65 %
Objects Don't Need References Analyze, OneFile, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE 2 1 Minor 40 %
include_once() Usage Analyze, Appinfo, All, CE 7 5 Minor 73 %
Several Instructions On The Same Line Analyze, All, ChangedBehavior 2 2 Major 56 %
Only Variable Returned By Reference Analyze, All, Simple 4 2 Major 3 %
Print And Die Analyze, All, Simple, CI-checks, CE 1 1 Minor 32 %
Random Without Try Security, All 3 3 Critical 30 %
Repeated Regex Analyze, All, Level 1, CI-checks, CE 37 16 Minor 47 %
Results May Be Missing Analyze, All, Simple, CI-checks, CE 1 1 Major 24 %
Return True False Analyze, All, Simple, Level 1, CI-checks, CE 1 1 Major 46 %
Same Conditions In Condition Analyze, All, Simple, CI-checks, CE 6 6 Critical 55 %
Should Chain Exception Analyze, All, Simple, CI-checks, CE 16 9 Minor 39 %
Should Use Ternary Operator Analyze, OneFile, All, Simple, CI-checks, CE 112 57 Minor 86 %
Preprocessable Analyze, All, Rector 179 85 Minor 85 %
Should Use Explode Args Analyze, All, CI-checks, CE 1 1 Minor 0 %
Static Inclusions Analyze, All 9 9 Minor 0 %
Static Loop Analyze, All, Simple, Level 4 19 17 Minor 67 %
Strpos()-like Comparison Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE 17 14 Major 54 %
Suspicious Comparison Analyze, All, Level 3 9 7 Major 39 %
Switch To Switch Analyze, All, RadwellCodes, Simple 6 5 Minor 58 %
Switch Without Default Analyze, ClearPHP, All, Simple, CI-checks, CE 28 17 Major 69 %
Test Then Cast Analyze, All 14 8 Major 34 %
Timestamp Difference Analyze, All, Simple, Level 3, CI-checks, CE 9 8 Major 49 %
Unchecked Resources Analyze, ClearPHP, All, Simple, Level 2, CI-checks, CE 1 1 Major 50 %
Unconditional Break In Loop Analyze, All, Level 3, CI-checks, CE 6 6 Major 48 %
Unreachable Code Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3, Unused, ChangedBehavior 204 75 Major 61 %
Unsupported Types With Operators Analyze, All, CompatibilityPHP80, CE 160 75 Minor 0 %
Avoid get_class() Analyze, All, Simple, CI-checks, CE, ChangedBehavior 6 6 Minor 32 %
Use Positive Condition Analyze, OneFile, All, Simple 55 36 Minor 82 %
Use Same Types For Comparisons Analyze, All 8 3 Minor 0 %
Use Variable Created Inside Loop Dead code, All 38 24 Minor 0 %
Useless Type Casting Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE 56 32 Minor 47 %
Useless Check Analyze, OneFile, All, Simple, Level 1, CI-checks, CE 4 4 Minor 35 %
Useless Coalesce Analyze, All, ChangedBehavior 62 37 Minor 0 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE 289 88 Minor 63 %
Useless Null Coalesce Analyze, All, Typehints 119 47 Minor 0 %
Useless Parenthesis Analyze, All, Simple, CI-checks, CE 36 22 Minor 81 %
Useless Short Ternary Analyze, All, ChangedBehavior 39 24 Minor 0 %
Useless Switch Analyze, All, Simple 2 1 Major 32 %
Wrong Precedence In Expression Analyze, All, ChangedBehavior 6 6 Minor 0 %
Already Parents Trait Analyze, All 2 2 Minor 0 %
Cannot Call Static Trait Method Directly Analyze, All, CompatibilityPHP81, CompatibilityPHP82 12 5 Minor 0 %
Dependant Trait Analyze, All, Level 3, ChangedBehavior 50 50 Minor 28 %
Empty Traits Analyze, Dead code, All, Simple, ChangedBehavior 2 2 Minor 12 %
Method Collision Traits Analyze, All, LintButWontExec, ChangedBehavior 23 23 Critical 5 %
Trait Is Not A Type Analyze, All, ClassReview, Typehints 11 3 Minor 0 %
Trait Not Found Analyze, All, LintButWontExec, ChangedBehavior 27 27 Minor 0 %
Undefined Insteadof Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 5 3 Major 0 %
Undefined Trait Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 27 9 Critical 15 %
Hexadecimal In String Inventory, CompatibilityPHP70, CompatibilityPHP71, All 1 1 0 0 %
String May Hold A Variable Analyze, All, Simple 104 21 Minor 59 %
Missing Some Returntype Analyze, All, Typehints, CI-checks, CE 117 66 Minor 0 %
StandaloneType True False Null Analyze, Appcontent, All, ChangedBehavior 327 132 Minor 0 %
Wrong Type With Default Analyze, All, LintButWontExec, ClassReview 1348 242 Minor 0 %
Assigned Twice Analyze, All 244 60 Minor 79 %
Lost References Analyze, All, Simple 1 1 Major 14 %
Overwritten Literals Analyze, All 315 63 Major 79 %
Recycled Variables Analyze, All 12 5 Minor 0 %
Undefined Variable Analyze, All, CI-checks, CE, Undefined 30 7 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10 6 5 Minor 74 %
Used Once Variables (In Scope) Analyze, OneFile, ClearPHP, All, Simple, Level 4, CE 166 68 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple, Unused 75 23 Minor 87 %