PHP Static analysis for grav

Label Recipes Issues Files Severity Frequence
Ambiguous Array Index Analyze, All, Simple, Level 2, Semantics, ChangedBehavior 79 20 Minor 31 %
Append And Assign Arrays Analyze, Internal, All, ChangedBehavior 4 4 Minor 0 %
Null Or Boolean Arrays Analyze, All 104 18 Minor 0 %
Randomly Sorted Arrays Analyze, All, Suggestions, Level 4 2 1 Minor 19 %
Too Many Array Dimensions Analyze, All 11 5 Minor 0 %
Weak Type With Array Analyze, All, ChangedBehavior 795 103 Minor 0 %
Abstract Or Implements Analyze, All, LintButWontExec, ChangedBehavior 35 35 Major 20 %
Ambiguous Static Analyze, All, Semantics, ChangedBehavior 406 161 Minor 49 %
Ambiguous Visibilities Analyze, All, Semantics, ChangedBehavior 300 120 Minor 55 %
Avoid option arrays in constructors Analyze, All, ClassReview, ChangedBehavior 3 3 Minor 0 %
Avoid Optional Properties Analyze, All, ChangedBehavior 182 55 Major 60 %
Clone With Non-Object Analyze, All, LintButWontExec, ChangedBehavior 3 3 Minor 11 %
Const Visibility Usage Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, ChangedBehavior 36 9 Minor 38 %
Could Be Abstract Class Analyze, All, ClassReview, ChangedBehavior 16 16 Minor 38 %
Class Could Be Final Analyze, All, ClassReview, ChangedBehavior 221 220 Minor 95 %
Method Could Be Static Analyze, All, ClassReview, ChangedBehavior 258 112 Minor 88 %
Could Inject Parameter Analyze, All, ClassReview, ChangedBehavior 99 53 Minor 0 %
Cyclic References Analyze, All, ClassReview, ChangedBehavior 5 3 Minor 0 %
Dependant Abstract Classes Analyze, All, ClassReview, ChangedBehavior 2 2 Minor 0 %
Different Argument Counts Analyze, All, ClassReview, ChangedBehavior 13 9 Minor 0 %
No Direct Call To Magic Method Analyze, All, Level 2, CI-checks, CE 45 11 Major 25 %
Don't Send $this In Constructor Analyze, All, ChangedBehavior 3 3 Minor 21 %
Don't Unset Properties Analyze, All, Top10, php-cs-fixable, CI-checks, CE, ChangedBehavior 6 6 Major 21 %
Empty Classes Analyze, All, Simple, ChangedBehavior 1 1 Minor 37 %
Implicit Nullable Type Analyze, All, ClassReview, ChangedBehavior 226 74 Minor 0 %
Incompatible Signature Methods With Covariance Analyze, All, ChangedBehavior 32 24 Critical 0 %
Inherited Property Type Must Match Analyze, All, LintButWontExec, ClassReview, ChangedBehavior 4 4 Minor 0 %
Instantiating Abstract Class Analyze, All, Simple 1 1 Major 14 %
Locally Unused Property Dead code, All, Simple, Unused, ChangedBehavior 94 45 Minor 76 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2, ChangedBehavior 64 26 Minor 51 %
Method Signature Must Be Compatible Analyze, All, LintButWontExec, ChangedBehavior 50 34 Critical 32 %
Mismatch Properties Types Analyze, All, LintButWontExec, ClassReview, ChangedBehavior 40 22 Minor 0 %
Missing Abstract Method Analyze, All, ClassReview 27 9 Minor 0 %
Missing Default To Property Analyze, All 97 39 Minor 0 %
Multiple Class Declarations Analyze, All, Simple, CI-checks, CE, ChangedBehavior 2 1 Major 12 %
New Object Then Immediate Call Analyze, All, ClassReview 75 49 Minor 0 %
No Public Access Analyze, All, ChangedBehavior 31 17 Minor 37 %
Non Nullable Getters Analyze, All, ClassReview, ChangedBehavior 9 6 Minor 0 %
Forgotten Visibility Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 4 2 Minor 27 %
Parent First Analyze, All, Suggestions, ChangedBehavior 26 26 Minor 36 %
Parent Is Not Static Analyze, All, ClassReview, ChangedBehavior 1 1 Major 0 %
Property Could Be Local Analyze, All, ClassReview, ChangedBehavior 43 25 Minor 62 %
Same Name For Property And Method Analyze, All, ClassReview, Semantics, ChangedBehavior 212 29 Minor 0 %
Never Used Properties Analyze, All, Simple, Unused, ChangedBehavior 47 22 Minor 44 %
Property Used In One Method Only Analyze, All, ChangedBehavior 138 78 Minor 73 %
Parent, Static Or Self Outside Class Analyze, All, Simple, ChangedBehavior 4 1 Major 15 %
Scalar Or Object Property Analyze, All 4 3 Minor 21 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview, ChangedBehavior 5 5 Minor 46 %
Should Use Local Class Analyze, ClearPHP, All, Simple, ChangedBehavior 448 137 Minor 96 %
Static Methods Called From Object Analyze, All, Simple, CI-checks, CE, ChangedBehavior 6 5 Minor 21 %
Swapped Arguments Analyze, All, ChangedBehavior 1 1 Critical 0 %
$this Is Not An Array Analyze, All, ChangedBehavior 36 2 Major 1 %
Too Many Dereferencing Analyze, All, ChangedBehavior 14 11 Minor 0 %
Wrong Access Style to Property Analyze, All, Level 2, ClassReview, CI-checks, CE 5 3 Critical 14 %
Undefined Classes Analyze, All, Stubs, Undefined 967 183 Major 97 %
Undefined Class Constants Analyze, All, LintButWontExec, CI-checks, CE, Stubs, ChangedBehavior, Undefined 177 44 Major 59 %
Undefined Parent Analyze, All, Simple, Undefined 8 5 Minor 19 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks, CE, CompatibilityPHP82, ChangedBehavior, Undefined 262 31 Major 61 %
Undefined static:: Or self:: Analyze, All, Simple, ChangedBehavior, Undefined 2 1 Minor 26 %
Undefined static ::class Analyze, All, CI-checks, CE, ChangedBehavior, Undefined 14 6 Major 37 %
Unfinished Object Analyze, All, ClassReview, ChangedBehavior 91 49 Major 0 %
Unreachable Method Analyze, Dead code, All, ClassReview, Unused, ChangedBehavior 4 2 Minor 0 %
Unresolved Catch Dead code, ClearPHP, All, ChangedBehavior 14 8 Major 52 %
Unresolved Classes Analyze, All, Stubs, ChangedBehavior 397 71 Major 67 %
Unresolved Instanceof Analyze, Dead code, ClearPHP, All, Simple, Top10, ChangedBehavior 28 17 Major 40 %
Unused Classes Analyze, Dead code, All, Simple, Unused, ChangedBehavior 7 7 Major 56 %
Unused Class Constant Analyze, All, ClassReview, Unused, ChangedBehavior 6 2 Minor 0 %
Unused Methods Dead code, All, Simple, Unused, ChangedBehavior 682 189 Minor 96 %
Unused Private Methods Dead code, OneFile, All, Simple, Unused, ChangedBehavior 6 4 Minor 50 %
Unused Private Properties Dead code, OneFile, All, Simple, Unused 5 4 Minor 51 %
Unused Protected Methods Dead code, All, Unused, ChangedBehavior 287 83 Major 68 %
Unused Public Methods Analyze, All, ChangedBehavior 1705 270 Minor 0 %
Use Instanceof Analyze, All, Simple, CI-checks, CE, ChangedBehavior 28 17 Major 35 %
Used Once Property Analyze, All, ChangedBehavior 10 9 Minor 43 %
Useless Abstract Class Analyze, All, Simple, ChangedBehavior 6 6 Minor 27 %
Useless Constructor Analyze, All, Simple, Level 3, ChangedBehavior 1 1 Minor 23 %
Useless Method Analyze, All, ChangedBehavior 6 2 Minor 0 %
Weak Typing Analyze, All, ChangedBehavior 121 41 Minor 50 %
Wrong Typed Property Default Analyze, All, LintButWontExec, ClassReview, CI-checks, CE 46 28 Minor 0 %
Use const Analyze, Coding Conventions, All, Top10, CI-checks, CE 34 5 Minor 24 %
Constant Used Only Once Analyze, All, ChangedBehavior 17 11 Minor 0 %
Multiple Constant Definition Analyze, All, Simple, CI-checks, CE, ChangedBehavior 8 5 Minor 16 %
Undefined Constants stubs 19 4 Minor 42 %
Unused Constants Dead code, All, Simple, Unused, ChangedBehavior 18 1 Minor 39 %
Could Be A Constant All, Dump, ChangedBehavior 143 63 Minor 0 %
Catch With Undefined Variable Analyze, All, ChangedBehavior, Undefined 14 4 Minor 0 %
Undefined Caught Exceptions Dead code, All, ChangedBehavior 20 11 None 53 %
Caught Exceptions All, Dump, ChangedBehavior 94 52 None 56 %
Converted Exceptions Analyze, All, ChangedBehavior 17 13 Minor 0 %
Could Drop Variable Dead code, All, Suggestions, ChangedBehavior 22 20 Minor 0 %
Forgotten Thrown Analyze, All, ChangedBehavior 4 3 Minor 23 %
Multiple Exceptions Catch() Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 1 1 Major 12 %
Throw Raw Exceptions Analyze, All, Suggestions, ChangedBehavior 231 78 Minor 0 %
Try Without Catch All, Dump, ChangedBehavior 1 1 Minor 0 %
Uncaught Exceptions Analyze, All, ChangedBehavior 262 88 Minor 73 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple, ChangedBehavior 2 2 Minor 30 %
Useless Try Analyze, All, ChangedBehavior 42 28 Minor 0 %
Native Alias Functions Usage Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 67 30 Minor 22 %
Use Named Boolean In Argument Definition Analyze, All, ChangedBehavior 224 87 Minor 63 %
Could Make A Function Analyze, All, Suggestions, ChangedBehavior 397 90 Minor 37 %
Deep Definitions Analyze, Appinfo, All, Simple, CE, ChangedBehavior 3 2 Major 15 %
Don't Collect Void Analyze, All, ChangedBehavior 170 33 Minor 0 %
Empty Function Analyze, All, Simple, ChangedBehavior 17 13 Minor 67 %
Hardcoded Passwords Analyze, Security, OneFile, All, Simple, Level 3, ChangedBehavior 170 18 Major 49 %
Insufficient Type Analyze, All, Typechecks, ChangedBehavior 47 14 Major 29 %
Method Is Not An If Analyze, All 55 41 Minor 0 %
Mismatch Parameter Name Analyze, All, CompatibilityPHP80, CE, ChangedBehavior 7 5 Minor 0 %
Mismatched Default Arguments Analyze, All, Typechecks, ChangedBehavior 103 28 Minor 38 %
Mismatched Type Usage Analyze, All 16 9 Minor 0 %
Mismatched Type Analyze, All, Typechecks, ChangedBehavior 58 25 Major 44 %
Modified Typed Parameter Analyze, All, ClassReview, ChangedBehavior 22 18 Minor 0 %
Must Return Methods Analyze, All, Simple, Level 2, LintButWontExec, CI-checks, CE, ChangedBehavior 1 1 Major 26 %
Never Called Parameter Analyze, All, Suggestions, Rector, Unused 114 58 Minor 55 %
No Boolean As Default Analyze, All 221 87 Minor 61 %
No Default For Referenced Parameter Analyze, All, ChangedBehavior 1 1 Minor 0 %
No Return Used Analyze, All, Suggestions, Level 4, ChangedBehavior 133 52 Minor 50 %
Only Variable Passed By Reference Analyze, All, ChangedBehavior 2 2 Critical 34 %
Renamed Parameter Analyze, All, Readability 4 4 Minor 0 %
Too Many Local Variables Analyze, All 27 23 Minor 37 %
Undefined Functions stubs 12 6 Major 34 %
Unused Parameter Analyze, All, Simple, Unused 80 33 Major 83 %
Unused Returned Value Analyze, Dead code, OneFile, All, Simple, Unused 331 79 Minor 55 %
Use Constant As Arguments Analyze, All, Simple, CI-checks, CE, ChangedBehavior 5 5 Major 16 %
Useless Referenced Argument Analyze, All, ChangedBehavior 9 4 Minor 27 %
Useless Type Check Dead code, OneFile, All, ChangedBehavior 3 3 Minor 0 %
Uses Default Values Analyze, All, Simple, CI-checks, CE, ChangedBehavior 2854 231 Minor 95 %
Using Deprecated Method Analyze, All, Attributes 19 5 Minor 0 %
Wrong Argument Type Analyze, All, Typechecks, ChangedBehavior 2 2 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks, CE, Stubs, ChangedBehavior 34 24 Major 60 %
Wrong Type Returned Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior 742 156 Minor 0 %
Wrong Type With Call Analyze, All, Typechecks, CI-checks, CE, ChangedBehavior 70 43 Minor 0 %
Already Parents Interface Analyze, All, Suggestions, Level 3, ChangedBehavior 19 19 Minor 20 %
Can't Implement Traversable Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior 2 2 Minor 0 %
Forgotten Interface Analyze, All, ChangedBehavior 18 18 Minor 46 %
Empty Interfaces Analyze, All, Simple, ChangedBehavior 8 8 Minor 28 %
Interfaces Is Not Implemented Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior 38 38 Minor 0 %
Interfaces Don't Ensure Properties Analyze, All, ClassReview, ChangedBehavior 3 1 Minor 0 %
Repeated Interface Analyze, All, LintButWontExec, ChangedBehavior 24 24 Minor 20 %
Undefined Interfaces Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 263 96 Major 90 %
Unused Interfaces Dead code, All, Simple, Suggestions, Level 2, Unused, ChangedBehavior 3 3 Minor 26 %
Useless Interfaces Analyze, ClearPHP, All, Simple, ClassReview, Typechecks, ChangedBehavior 30 30 Minor 39 %
Hidden Use Expression Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 11 5 Minor 34 %
Multiple Alias Definitions Analyze, All, Simple, CI-checks, CE, ChangedBehavior 300 172 Minor 35 %
Overload Existing Names Analyze, All, Semantics, ChangedBehavior 1 1 Minor 0 %
Should Make Alias Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 22 13 Minor 35 %
Unresolved Use Analyze, ClearPHP, All, Simple, ChangedBehavior 570 186 Major 92 %
Unused Use Dead code, ClearPHP, All, Simple, php-cs-fixable, Unused, ChangedBehavior 386 158 Major 60 %
Use With Fully Qualified Name Analyze, Coding Conventions, PHP recommendations, All, Simple, ChangedBehavior 3 3 Minor 7 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior 11 9 Major 45 %
Logical To in_array() Analyze, All, Level 2, ChangedBehavior 18 12 Minor 39 %
Memoize MagicCall Analyze, All, ClassReview, ChangedBehavior 4 2 Minor 0 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks, CE, ChangedBehavior 59 30 Minor 45 %
strpos() Too Much Analyze, All, CI-checks, CE, ChangedBehavior 29 20 Minor 26 %
array_key_exists() Works On Arrays Analyze, All, CompatibilityPHP74, CE, ChangedBehavior 27 15 Minor 0 %
Assumptions Analyze, All, ChangedBehavior 119 50 Minor 0 %
Use random_int() Analyze, Security, CompatibilityPHP71, All, Simple, Level 2, CI-checks, CE, ChangedBehavior 11 10 Major 31 %
Deprecated PHP Functions Analyze, All, CI-checks, CE 1 1 Major 9 %
Don't Pollute Global Space Analyze, All 50 9 Minor 0 %
Exit Without Argument Analyze, All, ChangedBehavior, BadPractices 6 4 Minor 0 %
False To Array Conversion Analyze, All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior 41 9 Minor 0 %
Include Variables All, Dump 15 12 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 126 37 Major 45 %
Use === null Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, CE, ChangedBehavior 1 1 Minor 27 %
PHP Native Interfaces and Return Type Analyze, All, LintButWontExec, CompatibilityPHP81, Deprecated, ChangedBehavior 10 8 Minor 0 %
List Short Syntax Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Internal, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 36 22 Major 28 %
List With Keys Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Appcontent, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 18 12 Major 34 %
Possible Missing Subpattern Analyze, All, Top10, CI-checks, CE, ChangedBehavior 1 1 Minor 24 %
PHP Native Class Type Compatibility Analyze, All, CompatibilityPHP81, ChangedBehavior 52 16 Major 0 %
No Array In Isset Analyze, All 561 118 Minor 0 %
No Class In Global Analyze, All, CI-checks, CE, ChangedBehavior 2 2 Minor 46 %
No Null For Native PHP Functions Analyze, All, CompatibilityPHP81, Deprecated, ChangedBehavior 253 61 Minor 0 %
Php7 Relaxed Keyword Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE 2 2 Major 29 %
Php 8.0 Only TypeHints Appinfo, CompatibilityPHP56, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior 59 38 Minor 0 %
Scalar Are Not Arrays Analyze, All, CompatibilityPHP74, CI-checks, CE, ChangedBehavior 112 24 Minor 0 %
Strtr Arguments Analyze, All, CI-checks, CE, ChangedBehavior 1 1 Major 2 %
Too Many Native Calls Analyze, All, ChangedBehavior 3 2 Minor 25 %
Typed Property Usage Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CE, ChangedBehavior 540 169 Minor 87 %
Uses PHP 8 Match() Appinfo, All, CompatibilityPHP74, CE, ChangedBehavior 3 1 None 0 %
Use Nullable Type Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior 460 122 Major 66 %
Use PHP Object API Analyze, ClearPHP, All, Simple, CI-checks, CE, ChangedBehavior 2 1 Minor 12 %
Avoid Using stdClass Analyze, OneFile, All, Simple, Level 4 7 7 Minor 28 %
Wrong Type For Native PHP Function Analyze, All, CI-checks, CE, ChangedBehavior 184 73 Minor 0 %
Always Anchor Regex Security, All, ChangedBehavior 16 15 Major 65 %
Avoid Those Hash Functions Security, All, ChangedBehavior 74 32 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 14 %
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 3 2 Minor 0 %
No Net For Xml Load Security, All, ChangedBehavior 3 3 Major 51 %
Avoid sleep()/usleep() Security, All, ChangedBehavior 4 4 Minor 41 %
Set Cookie Safe Arguments Security, All, ChangedBehavior 2 2 Major 25 %
Unserialize Second Arg Security, All, ChangedBehavior 1 1 Critical 50 %
Adding Zero Dump 2 2 Minor 18 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE 6 5 Major 29 %
Comparison Is Always The Same Analyze, All, ChangedBehavior 76 44 Minor 0 %
Bail Out Early Analyze, OneFile, All, Simple, Level 4, ChangedBehavior 192 85 Minor 74 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior 30 15 Minor 51 %
Buried Assignation Analyze, All, ChangedBehavior 31 23 Minor 58 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1, ChangedBehavior 5 5 Minor 26 %
Casting Ternary Analyze, OneFile, All, CI-checks, CE, ChangedBehavior 2 2 Major 0 %
Check All Types Analyze, All, ChangedBehavior 65 30 Major 39 %
Check Division By Zero Analyze, All, ChangedBehavior 14 8 Minor 0 %
Check JSON Analyze, All, CI-checks, CE 54 28 Major 46 %
Coalesce And Concat Analyze, All, CI-checks, CE, ChangedBehavior 2 2 Minor 0 %
Coalesce And Ternary Operators Order Analyze, All, ChangedBehavior 1 1 Minor 0 %
Common Alternatives Analyze, All, Simple, ChangedBehavior 38 28 Major 48 %
Could Be Else Analyze, All, ChangedBehavior 4 4 Minor 23 %
Could Use Short Assignation Analyze, Performances, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior 20 15 Minor 34 %
Creating Object On Null Analyze, All 1 1 Minor 0 %
Dangling Array References Analyze, PHP recommendations, ClearPHP, All, Simple, Level 1, Top10, CI-checks, CE, ChangedBehavior 3 3 Major 26 %
Default Then Discard Analyze, All, ChangedBehavior, Readability 4 4 Minor 0 %
Don't Change The Blind Var Analyze, All, ChangedBehavior 56 33 Minor 46 %
Don't Mix ++ Analyze, All, ChangedBehavior 13 8 Minor 30 %
Don't Reuse Foreach Source Analyze, All, ChangedBehavior 16 14 Minor 0 %
Double Assignation Analyze, All, ChangedBehavior 5 4 Major 29 %
Double Checks Analyze, All, ChangedBehavior 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, ChangedBehavior 16 12 Minor 38 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE 15 9 Minor 35 %
Empty Blocks Analyze, All, Simple, CI-checks, CE, ChangedBehavior 3 3 Minor 25 %
Empty Instructions Analyze, Dead code, All, Simple, ChangedBehavior 5 3 Minor 19 %
Empty Try Catch Analyze, All, Level 3 9 8 Minor 30 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, CE, ChangedBehavior 12 8 Major 33 %
foreach() On Object Analyze, All 70 37 Minor 0 %
Foreach Reference Is Not Modified Analyze, All, Simple, CI-checks, CE, ChangedBehavior 1 1 Minor 13 %
Htmlentities Calls Analyze, All, Simple, CI-checks, CE, ChangedBehavior 3 2 Major 16 %
Htmlentities Using Default Flag Analyze, All, Simple, CI-checks, ChangedBehavior 5 3 Minor 0 %
Identical Case In Switch Analyze, All, ChangedBehavior 21 3 Minor 0 %
Identical Consecutive Expression Analyze, All, ChangedBehavior 14 10 Minor 30 %
If With Same Conditions Analyze, All, Simple, CI-checks, CE, ChangedBehavior 6 6 Major 23 %
Iffectations Analyze, All, ChangedBehavior 29 22 Minor 53 %
Implied If Analyze, ClearPHP, All, Simple, Rector, CI-checks, CE, ChangedBehavior 16 7 Major 18 %
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 305 65 Major 58 %
Infinite Recursion Analyze, All, ChangedBehavior 4 4 Major 0 %
list() May Omit Variables Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE 2 2 Minor 16 %
Long Arguments Analyze, All, ChangedBehavior 41 23 Minor 51 %
Max Level Of Nesting Analyze, All, ChangedBehavior 39 31 Minor 0 %
Merge If Then Analyze, All, CI-checks, CE, ChangedBehavior 50 30 Minor 0 %
Could Merge Ternary Into Ifthen Analyze, All, ChangedBehavior 1 1 Minor 0 %
Mismatched Ternary Alternatives Analyze, All, Suggestions, Level 4, ChangedBehavior 22 14 Major 31 %
Missing Assignation In Branches Analyze, All, ChangedBehavior 272 89 Minor 0 %
Maybe Missing New Analyze, All, ChangedBehavior 13 1 Critical 19 %
Mixed Concat And Interpolation Analyze, Coding Conventions, All 8 5 Minor 23 %
Modernize Empty With Expression Analyze, OneFile, All, Simple, ChangedBehavior 44 22 Minor 33 %
Multiple Type Variable Analyze, All, Level 4, ChangedBehavior 3 3 Minor 29 %
Nested Ifthen Analyze, All, RadwellCodes, ChangedBehavior 150 51 Major 59 %
Nested Ternary Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 11 8 Major 27 %
Don't Change Incomings Analyze, All, ChangedBehavior 5 1 Minor 20 %
No Choice Analyze, All, Simple, Level 2, Top10, Rector, CI-checks, CE, ChangedBehavior 242 68 Major 39 %
No Hardcoded Hash Analyze, Security, All, Simple, ChangedBehavior 5 2 Critical 37 %
No Hardcoded Ip Analyze, Security, ClearPHP, All, Simple, ChangedBehavior 1 1 Minor 18 %
No Hardcoded Path Analyze, ClearPHP, All, Simple, ChangedBehavior 2 1 Major 15 %
No isset() With empty() Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE, ChangedBehavior 1 1 Minor 13 %
No Need For Else Analyze, All, ChangedBehavior 25 19 Minor 41 %
No Need For Triple Equal Analyze, All, ChangedBehavior 4 3 Minor 0 %
No Null For Index Analyze, All, ChangedBehavior 100 21 Minor 0 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior 9 4 Minor 28 %
Avoid Substr() One Analyze, Performances, CompatibilityPHP71, All, Simple, Suggestions, Level 2, Top10, CI-checks, CE, ChangedBehavior 2 1 Minor 42 %
Variable Is Not A Condition Analyze, All, ChangedBehavior 954 152 Minor 75 %
Non Integer Nor String As Index Analyze, All, ChangedBehavior 22 9 Minor 0 %
@ Operator Analyze, Appinfo, Performances, ClearPHP, All, CI-checks, CE, ChangedBehavior 64 22 Minor 48 %
include_once() Usage Analyze, Appinfo, All, CE, ChangedBehavior 7 5 Minor 48 %
Several Instructions On The Same Line Analyze, All, ChangedBehavior 2 2 Major 25 %
Only Variable Returned By Reference Analyze, All, Simple 4 2 Major 5 %
Print And Die Analyze, All, Simple, CI-checks, CE, ChangedBehavior 1 1 Minor 12 %
Random Without Try Security, All, ChangedBehavior 2 2 Critical 30 %
Repeated Regex Analyze, All, Level 1, CI-checks, CE, ChangedBehavior 26 10 Minor 29 %
Return True False Analyze, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 1 1 Major 17 %
Same Conditions In Condition Analyze, All, Simple, CI-checks, CE, ChangedBehavior 4 4 Critical 24 %
Should Chain Exception Analyze, All, Simple, CI-checks, CE, ChangedBehavior 6 5 Minor 22 %
Should Use Ternary Operator Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior 102 48 Minor 58 %
Preprocessable Analyze, All, Rector, ChangedBehavior 170 80 Minor 74 %
Should Use Explode Args Analyze, All, CI-checks, CE, ChangedBehavior 2 2 Minor 0 %
Static Inclusions Analyze, All, ChangedBehavior 9 9 Minor 0 %
Static Loop Analyze, All, Simple, Level 4, ChangedBehavior 20 18 Minor 38 %
Strpos()-like Comparison Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior 15 12 Major 25 %
Suspicious Comparison Analyze, All, Level 3, ChangedBehavior 9 7 Major 25 %
Switch To Switch Analyze, All, RadwellCodes, Simple, ChangedBehavior 7 6 Minor 29 %
Switch Without Default Analyze, ClearPHP, All, Simple, CI-checks, CE, ChangedBehavior 25 14 Major 39 %
Test Then Cast Analyze, All, ChangedBehavior 13 7 Major 16 %
Timestamp Difference Analyze, All, Simple, Level 3, CI-checks, CE, ChangedBehavior 11 10 Major 27 %
Unchecked Resources Analyze, ClearPHP, All, Simple, Level 2, CI-checks, CE, ChangedBehavior 1 1 Major 23 %
Unconditional Break In Loop Analyze, All, Level 3, CI-checks, CE 8 7 Major 40 %
Unreachable Code Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3, Unused, ChangedBehavior 60 39 Major 61 %
Avoid get_class() Analyze, All, Simple, CI-checks, CE, ChangedBehavior 5 5 Minor 13 %
Use Positive Condition Analyze, OneFile, All, Simple, ChangedBehavior 41 28 Minor 56 %
Use Same Types For Comparisons Analyze, All 1 1 Minor 0 %
Use Variable Created Inside Loop Dead code, All, ChangedBehavior 39 24 Minor 0 %
Useless Type Casting Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE, ChangedBehavior 40 23 Minor 35 %
Useless Check Before Foreach Analyze, OneFile, All, Simple, Level 1, CI-checks, CE 4 4 Minor 13 %
Useless Coalesce Analyze, All, ChangedBehavior 55 31 Minor 0 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior 245 70 Minor 54 %
Useless Null Coalesce Analyze, All, Typehints, ChangedBehavior 99 37 Minor 0 %
Useless Parenthesis Analyze, All, Simple, CI-checks, CE, ChangedBehavior 38 21 Minor 52 %
Useless Short Ternary Analyze, All, ChangedBehavior 37 22 Minor 0 %
Useless Switch Analyze, All, Simple, ChangedBehavior 2 1 Major 10 %
Wrong Locale Analyze, All, Semantics, ChangedBehavior 1 1 Major 0 %
Wrong Precedence In Expression Analyze, All, ChangedBehavior 6 6 Minor 0 %
Cannot Call Static Trait Method Directly Analyze, All, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior 12 5 Minor 0 %
Dependant Trait Analyze, All, Level 3, ChangedBehavior 36 36 Minor 23 %
Empty Traits Analyze, Dead code, All, Simple, ChangedBehavior 1 1 Minor 7 %
Method Collision Traits Analyze, All, LintButWontExec, ChangedBehavior 11 11 Critical 6 %
Trait Not Found Analyze, All, LintButWontExec, ChangedBehavior 10 10 Minor 0 %
Undefined Insteadof Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 5 3 Major 1 %
Undefined Trait Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined 31 12 Critical 19 %
Hexadecimal In String Inventory, CompatibilityPHP70, CompatibilityPHP71, All, ChangedBehavior 1 1 0 0 %
String May Hold A Variable Analyze, All, Simple, ChangedBehavior 102 19 Minor 38 %
Missing Some Returntype Analyze, All, Typehints, CI-checks, CE, ChangedBehavior 81 47 Minor 0 %
StandaloneType True False Null Analyze, Appcontent, All, ChangedBehavior 234 93 Minor 0 %
Wrong Type With Default Analyze, All, LintButWontExec, ClassReview, ChangedBehavior 227 75 Minor 0 %
Assigned Twice Analyze, All, ChangedBehavior 227 50 Minor 51 %
Lost References Analyze, All, Simple, ChangedBehavior 1 1 Major 7 %
Overwritten Literals Analyze, All, ChangedBehavior 289 53 Major 51 %
Recycled Variables Analyze, All 12 5 Minor 0 %
Undefined Variable Analyze, All, CI-checks, CE, Undefined 25 5 Minor 37 %
Used Once Variables Analyze, OneFile, All, Simple, Top10, ChangedBehavior 13 9 Minor 54 %
Used Once Variables (In Scope) Analyze, OneFile, ClearPHP, All, Simple, Level 4, CE, ChangedBehavior 209 62 Minor 88 %
Written Only Variables Analyze, OneFile, All, Simple, Unused, ChangedBehavior 89 20 Minor 64 %