PHP Static analysis for sylius

Label Recipes Issues Files Severity Frequence
Randomly Sorted Arrays All, Analyze, Level 4, Suggestions 12 10 Minor 41 %
String Initialization All, CompatibilityPHP71 2 1 Minor 33 %
Too Many Array Dimensions All, Analyze 8 5 Minor 0 %
Accessing Private Analyze, All, Simple 3 3 Major 13 %
Ambiguous Static All, Analyze 100 70 Minor 64 %
Ambiguous Visibilities All, Analyze 524 324 Minor 70 %
Anonymous Classes Appinfo, CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, All 10 7 Major 15 %
Avoid Optional Properties All, Analyze 51 35 Major 83 %
Cant Instantiate Class All, Analyze 14 3 Critical 28 %
Child Class Removes Typehint All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Typechecks 5 4 Major 1 %
Class, Interface Or Trait With Identical Names Analyze, All 2 2 Minor 16 %
Const Visibility Usage All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 215 85 Minor 16 %
Constant Class Analyze, All, Simple, CI-checks 23 23 Minor 49 %
Could Be Abstract Class All, Analyze, ClassReview 37 37 Minor 65 %
Class Could Be Final All, Analyze, ClassReview 484 481 Minor 95 %
Method Could Be Static All, Analyze, ClassReview 906 715 Minor 95 %
Cyclic References All, Analyze, ClassReview 1 1 Minor 0 %
Dependant Abstract Classes All, Analyze, ClassReview 3 3 Minor 0 %
Different Argument Counts All, Analyze, ClassReview 2 2 Minor 0 %
No Direct Call To Magic Method Analyze, All, Level 2, CI-checks 14 11 Major 41 %
Don't Send $this In Constructor All, Analyze 2 2 Minor 39 %
Empty Classes Analyze, All, Simple 19 19 Minor 58 %
Class Should Be Final By Ocramius All, Analyze 8 8 Minor 42 %
Hidden Nullable All, Analyze, ClassReview 111 74 Minor 0 %
Incompatible Signature Methods With Covariance All, Analyze 9 8 Critical 0 %
Locally Unused Property Dead code, All, Simple 51 43 Minor 76 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2 6 6 Minor 49 %
Method Signature Must Be Compatible All, Analyze, LintButWontExec 48 41 Critical 50 %
Missing Abstract Method All, Analyze, ClassReview 4 2 Minor 0 %
Multiple Class Declarations Analyze, All, Simple, CI-checks 17 17 Major 5 %
No Public Access Analyze, All 9 7 Minor 60 %
Non Nullable Getters All, Analyze, ClassReview 75 45 Minor 0 %
Forgotten Visibility Analyze, ClearPHP, All, Simple, Level 1, CI-checks 2995 479 Minor 42 %
Parent First All, Analyze, Suggestions 4 4 Minor 55 %
Property Could Be Local All, Analyze, ClassReview 837 398 Minor 71 %
Never Used Properties Analyze, All, Simple 47 39 Minor 72 %
Property Used In One Method Only All, Analyze 9 8 Minor 84 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview 10 8 Minor 57 %
Should Use Local Class Analyze, ClearPHP, All, Simple 1146 684 Minor 94 %
Static Methods Called From Object Analyze, All, Simple, CI-checks 308 162 Minor 38 %
Too Many Dereferencing All, Analyze 123 86 Minor 0 %
Too Many Finds All, Analyze 8 8 Minor 6 %
Too Many Injections All, Analyze, Dismell 75 75 Minor 0 %
Wrong Access Style to Property All, Analyze, Level 2, ClassReview, CI-checks 10 1 Critical 3 %
Undefined Classes Analyze, All 8848 1766 Major 91 %
Undefined Class Constants Analyze, All, CI-checks 457 229 Major 53 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks 441 153 Major 58 %
Undefined static:: Or self:: Analyze, All, Simple 46 26 Minor 33 %
Undefined ::class All, Analyze, CI-checks 789 396 Major 34 %
Unresolved Catch Dead code, ClearPHP, All 52 37 Major 51 %
Unresolved Classes Analyze, All 1383 525 Major 86 %
Unresolved Instanceof Analyze, Dead code, ClearPHP, All, Simple, Top10 70 28 Major 48 %
Unused Classes Dead code, All, Simple, Analyze 122 122 Major 72 %
Unused Class Constant All, Analyze, ClassReview 29 12 Minor 0 %
Unused Methods Dead code, All, Simple 8654 1940 Minor 95 %
Unused Private Methods Dead code, OneFile, All, Simple 5 5 Minor 45 %
Unused Private Properties Dead code, OneFile, All, Simple 8 8 Minor 37 %
Unused Protected Methods Dead code, All 295 250 Major 72 %
Use Class Operator All, Analyze, Performances, Simple, CI-checks 7 2 Minor 74 %
Use Instanceof Analyze, All, Simple, CI-checks 4 2 Major 63 %
Used Once Property All, Analyze 71 68 Minor 72 %
Useless Constructor Analyze, All, Simple, Level 3 2 2 Minor 38 %
Weak Typing All, Analyze 20 17 Minor 41 %
Multiple Constant Definition Analyze, All, Simple, CI-checks 46 13 Minor 32 %
Undefined Constants Analyze, All, Simple, CompatibilityPHP72, CI-checks 16 4 Minor 54 %
Catch Undefined Variable All, Analyze 9 1 Minor 0 %
Undefined Caught Exceptions Dead code, All 19 17 None 50 %
Forgotten Thrown All, Analyze 23 13 Major 30 %
Multiple Exceptions Catch() CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, All, Appinfo 2 2 Major 9 %
Uncaught Exceptions Analyze, All 252 175 Minor 81 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple 1 1 Minor 43 %
Useless Catch All, Analyze, CI-checks 44 33 Minor 47 %
Missing Include All, Analyze 2 1 Critical 61 %
Aliases Usage Analyze, ClearPHP, OneFile, All, Simple, Level 1, CI-checks 1 1 Minor 42 %
Use Named Boolean In Argument Definition All, Analyze 28 20 Minor 84 %
Could Make A Function All, Analyze, Suggestions 211 123 Minor 75 %
Dont Collect Void All, Analyze 855 137 Minor 0 %
Empty Function Analyze, All, Simple 76 41 Minor 71 %
Hardcoded Passwords Analyze, OneFile, Security, All, Simple, Level 3 139 83 Major 61 %
Insufficient Typehint All, Analyze, Typechecks 890 327 Major 24 %
Mismatch Parameter Name All, Analyze, CompatibilityPHP80 41 29 Minor 0 %
Mismatch Type And Default All, Analyze, LintButWontExec, Typechecks 1 1 Critical 11 %
Mismatched Default Arguments All, Analyze, Typechecks 106 43 Minor 33 %
Mismatched Typehint All, Analyze, Typechecks 233 81 Major 5 %
Modified Typed Parameter All, Analyze, ClassReview 17 15 Minor 0 %
Must Return Methods Analyze, All, Simple, Level 2, LintButWontExec, CI-checks 44 37 Major 22 %
Never Used Parameter All, Analyze, Suggestions 178 143 Minor 47 %
No Boolean As Default All, Analyze 28 20 Minor 84 %
No Return Used All, Analyze, Suggestions, Level 4 2 2 Minor 41 %
Relay Function Analyze, All 1092 449 Major 83 %
Too Many Local Variables All, Analyze 1 1 Minor 65 %
Typehint Must Be Returned All, Analyze, LintButWontExec, CI-checks 44 37 Major 10 %
Undefined Functions Analyze, All, CI-checks 143 73 Major 71 %
Unused Arguments Analyze, All, Simple 535 339 Major 89 %
Useless Referenced Argument All, Analyze 1 1 Minor 57 %
Useless Type Check All, Dead code, OneFile 38 31 Minor 0 %
Uses Default Values Analyze, All, Simple, CI-checks 480 242 Minor 97 %
Methods Without Return All, Analyze 1588 184 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks 42 19 Major 38 %
Wrong Optional Parameter Analyze, All, Simple, Level 1, CI-checks 11 11 Minor 38 %
Wrong Returned Type All, Analyze, ClassReview, CI-checks 509 324 Minor 0 %
Wrong Type With Call All, Analyze, Typechecks, CI-checks 2 2 Minor 0 %
Already Parents Interface Analyze, All, Level 3, Suggestions 22 22 Minor 17 %
Forgotten Interface All, Analyze 188 188 Minor 52 %
Empty Interfaces Analyze, All, Simple 26 26 Minor 38 %
Interfaces Is Not Implemented All, Analyze, ClassReview, LintButWontExec, CI-checks 43 43 Minor 0 %
Undefined Interfaces Analyze, All, CI-checks 4808 1635 Major 67 %
Unused Interfaces Dead code, All, Simple, Suggestions, Level 2 2 2 Minor 25 %
Useless Interfaces Analyze, ClearPHP, All, Simple, ClassReview, Typechecks 26 26 Minor 57 %
Hidden Use Expression Analyze, OneFile, All, Simple, CI-checks 19 4 Minor 24 %
Multiple Alias Definitions Analyze, All, Simple, CI-checks 3264 1454 Minor 42 %
Should Make Alias Analyze, OneFile, All, Simple, CI-checks 6 6 Minor 44 %
Unresolved Use Analyze, ClearPHP, All, Simple 2596 1470 Major 65 %
Unused Use Dead code, ClearPHP, All, Simple 387 301 Major 54 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks 5 5 Major 55 %
Logical To in_array All, Analyze, Level 2 5 5 Minor 66 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks 2 1 Minor 74 %
strpos() Too Much All, Analyze, CI-checks 3 3 Minor 46 %
array_key_exists() Works On Arrays All, CompatibilityPHP74, Analyze 6 5 Minor 0 %
Assumptions All, Analyze 226 175 Minor 0 %
Avoid mb_dectect_encoding() All, Analyze 1 1 Minor 0 %
Use random_int() Analyze, Security, All, CompatibilityPHP71, Simple, Level 2, CI-checks 6 2 Major 59 %
Detect Current Class All, Suggestions, CompatibilityPHP74 5 4 None 47 %
Don't Pollute Global Space All, Analyze 17 17 Minor 0 %
Wrong Parameter Type Analyze, OneFile, All, Simple, CI-checks 5 4 Major 45 %
List Short Syntax Internal, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, All, Appinfo 14 10 Major 10 %
List With Keys CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Appcontent, Appinfo, All 1 1 Major 32 %
No Class In Global All, Analyze, CI-checks 17 17 Minor 78 %
PHP 7.0 Scalar Typehints All, CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 5174 1386 Critical 31 %
PHP 7.1 Scalar Typehints All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 52 49 Critical 0 %
PHP 7.2 Scalar Typehints All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 4 1 Critical 0 %
PHP 7.3 Last Empty Argument All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 20 5 Critical 13 %
Php7 Relaxed Keyword CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, All, Appinfo 1 1 Major 25 %
PHP Keywords As Names Analyze, All, Simple 942 173 Major 89 %
Scalar Are Not Arrays All, Analyze, CompatibilityPHP74, CI-checks 4 3 Minor 0 %
Should Use Coalesce Analyze, All, Simple, Suggestions, Level 3, CI-checks 2 2 Major 71 %
Trailing Comma In Calls All, CompatibilityPHP53, CompatibilityPHP70, Appinfo, CompatibilityPHP71, CompatibilityPHP72, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 20 5 Minor 0 %
Use Nullable Type All, Appinfo, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 1763 529 Major 21 %
Avoid Using stdClass All, Analyze, OneFile, Simple, Level 4 29 25 Minor 45 %
Usort Sorting In PHP 7.0 CompatibilityPHP70, All 4 4 Major 46 %
Wrong Type For Native PHP Function All, Analyze, CI-checks 30 21 Minor 0 %
Avoid Those Hash Functions Security, All 2 2 Major 60 %
filter_input() As A Source All, Security 1 1 Minor 6 %
Keep Files Access Restricted All, Security 1 1 Minor 0 %
No Net For Xml Load All, Security 81 48 Major 49 %
Avoid sleep()/usleep() Security, All 4 3 Minor 39 %
Unserialize Second Arg Security, All 3 3 Critical 49 %
Adding Zero Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks 8 4 Minor 33 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1, CI-checks 1 1 Major 52 %
Constant Comparison All, Analyze 40 33 Minor 0 %
Array_merge Needs Array Of Arrays All, Analyze 3 3 Minor 0 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks 16 14 Minor 76 %
Buried Assignation Analyze, All 39 26 Minor 82 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1 6 4 Minor 55 %
Check All Types All, Analyze 3 3 Major 68 %
Common Alternatives Analyze, All, Simple 2 2 Major 61 %
Could Be Else All, Analyze 1 1 Minor 48 %
Could Use Short Assignation Analyze, OneFile, Performances, All, Simple, CI-checks 6 6 Minor 60 %
Dont Change The Blind Var All, Analyze 4 4 Minor 72 %
Dont Mix ++ All, Analyze 3 3 Minor 43 %
Double Instructions Analyze, All, Simple 18 14 Minor 57 %
Empty Instructions Dead code, Analyze, All, Simple 9 9 Minor 43 %
Empty Try Catch Analyze, All, Level 3 14 12 Minor 47 %
Identical Consecutive Expression All, Analyze 20 13 Minor 58 %
Iffectations Analyze, All 30 18 Minor 80 %
Inconsistent Elseif All, Analyze 1 1 Major 73 %
Infinite Recursion All, Analyze 111 47 Major 0 %
list() May Omit Variables Analyze, All, Simple, Suggestions, Level 3, CI-checks 1 1 Minor 37 %
Long Arguments All, Analyze 482 93 Minor 67 %
Max Level Of Nesting All, Analyze 2 2 Minor 0 %
Merge If Then All, Analyze, CI-checks 3 3 Minor 0 %
Modernize Empty With Expression All, Analyze, OneFile, Simple 19 14 Minor 56 %
Nested Ifthen Analyze, All, RadwellCodes 1 1 Major 87 %
Don't Change Incomings Analyze, All 7 1 Minor 44 %
No Hardcoded Hash Analyze, Security, All, Simple 10 3 Critical 44 %
No Hardcoded Ip Analyze, ClearPHP, Security, All, Simple 4 2 Minor 24 %
No isset() With empty() All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks 2 1 Minor 28 %
No Need For Triple Equal All, Analyze 81 45 Minor 0 %
Variable Is Not A Condition All, Analyze 72 47 Minor 57 %
@ Operator Appinfo, ClearPHP, All, Analyze, Performances, CI-checks 38 36 Minor 66 %
Several Instructions On The Same Line Analyze, All 2 2 Major 57 %
Printf Number Of Arguments All, Analyze, CI-checks 1 1 Minor 42 %
Should Chain Exception Analyze, All, Simple, CI-checks 6 5 Minor 36 %
Should Make Ternary All, Analyze, OneFile, Simple, CI-checks 7 7 Minor 85 %
Preprocessable Analyze, All, Rector 14 11 Minor 86 %
Static Loop Analyze, All, Simple, Level 4 12 11 Minor 65 %
Strpos()-like Comparison Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks 1 1 Major 54 %
Suspicious Comparison All, Analyze, Level 3 5 3 Major 15 %
Switch To Switch Analyze, All, RadwellCodes, Simple 1 1 Minor 79 %
Switch Without Default Analyze, ClearPHP, All, Simple, CI-checks 7 7 Major 68 %
Test Then Cast All, Analyze 1 1 Major 32 %
Unchecked Resources Analyze, ClearPHP, All, Simple, Level 2, CI-checks 1 1 Major 49 %
Unconditional Break In Loop All, Analyze, Level 3, CI-checks 1 1 Major 46 %
Unreachable Code Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3 8 5 Major 44 %
Use Positive Condition All, Analyze, OneFile, Simple 5 5 Minor 81 %
Useless Casting All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks 20 17 Minor 37 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks 29 23 Minor 58 %
Useless Parenthesis Analyze, All, Simple, CI-checks 13 10 Minor 81 %
Dependant Trait Analyze, All, Level 3 4 4 Minor 26 %
Trait Not Found All, Analyze, LintButWontExec 9 9 Minor 0 %
No Real Comparison Analyze, All, Simple, Level 2, Top10, CI-checks 2 2 Major 22 %
String May Hold A Variable Analyze, All, Simple 7 5 Minor 58 %
Missing Returntype In Method All, Typehints, Analyze, CI-checks 206 149 Minor 0 %
Assigned Twice All, Analyze 8 4 Minor 78 %
Overwritten Literals Analyze, All 8 4 Major 78 %
Undefined Variable All, Analyze, CI-checks 54 6 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10 3 3 Minor 87 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4 705 425 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple 135 94 Minor 78 %