PHP Static analysis for ccxt

Label Recipes Issues Files Severity Frequence
Null Or Boolean Arrays All, Analyze 256 81 Minor 0 %
Randomly Sorted Arrays All, Analyze, Level 4, Suggestions 48 38 Minor 41 %
String Initialization All, CompatibilityPHP71 11 5 Minor 33 %
Too Many Array Dimensions All, Analyze 1 1 Minor 0 %
Ambiguous Static All, Analyze 12 8 Minor 64 %
Ambiguous Visibilities All, Analyze 4 4 Minor 70 %
Avoid option arrays in constructors All, Analyze, ClassReview 5 5 Minor 0 %
Avoid Optional Properties All, Analyze 73 15 Major 83 %
Child Class Removes Typehint All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Typechecks 39 4 Major 1 %
Clone With Non-Object All, Analyze, LintButWontExec 15 3 Minor 0 %
Const Visibility Usage All, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 4 2 Minor 16 %
Could Be Abstract Class All, Analyze, ClassReview 10 10 Minor 65 %
Class Could Be Final All, Analyze, ClassReview 155 137 Minor 95 %
Method Could Be Static All, Analyze, ClassReview 37 15 Minor 95 %
Cyclic References All, Analyze, ClassReview 20 7 Minor 0 %
Dependant Abstract Classes All, Analyze, ClassReview 1 1 Minor 0 %
Different Argument Counts All, Analyze, ClassReview 26 24 Minor 0 %
Don't Send $this In Constructor All, Analyze 1 1 Minor 39 %
Incompatible Signature Methods With Covariance All, Analyze 18 11 Critical 0 %
Locally Unused Property Dead code, All, Simple 2 2 Minor 76 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2 26 12 Minor 49 %
Method Signature Must Be Compatible All, Analyze, LintButWontExec 131 82 Critical 50 %
Multiple Class Declarations Analyze, All, Simple, CI-checks 2 1 Major 5 %
No Public Access Analyze, All 17 9 Minor 60 %
Forgotten Visibility Analyze, ClearPHP, All, Simple, Level 1, CI-checks 19 19 Minor 42 %
Parent First All, Analyze, Suggestions 1 1 Minor 55 %
Property Could Be Local All, Analyze, ClassReview 14 5 Minor 71 %
Never Used Properties Analyze, All, Simple 1 1 Minor 72 %
Property Used In One Method Only All, Analyze 22 9 Minor 84 %
Redefined Default Analyze, All, Simple, CI-checks 15 7 Major 26 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview 35 2 Minor 57 %
Should Use Local Class Analyze, ClearPHP, All, Simple 139 25 Minor 94 %
Static Methods Called From Object Analyze, All, Simple, CI-checks 10431 133 Minor 38 %
Wrong Access Style to Property All, Analyze, Level 2, ClassReview, CI-checks 2538 114 Critical 3 %
Undefined Classes Analyze, All 62 18 Major 91 %
Undefined Properties Analyze, ClearPHP, All, Simple, CI-checks 2544 114 Major 58 %
Unresolved Catch Dead code, ClearPHP, All 1 1 Major 51 %
Unresolved Classes Analyze, All 1 1 Major 86 %
Unresolved Instanceof Analyze, Dead code, ClearPHP, All, Simple, Top10 1 1 Major 48 %
Unused Classes Dead code, All, Simple, Analyze 1 1 Major 72 %
Unused Class Constant All, Analyze, ClassReview 1 1 Minor 0 %
Unused Methods Dead code, All, Simple 241 64 Minor 95 %
Unused Private Properties Dead code, OneFile, All, Simple 1 1 Minor 37 %
Use Class Operator All, Analyze, Performances, Simple, CI-checks 2491 88 Minor 74 %
Use Instanceof Analyze, All, Simple, CI-checks 2 2 Major 63 %
Used Once Property All, Analyze 2 2 Minor 72 %
Weak Typing All, Analyze 164 85 Minor 41 %
Use const Analyze, Coding Conventions, All, Top10, CI-checks 4 2 Minor 57 %
Constants With Strange Names Analyze, All, Simple, CI-checks 9 1 Minor 1 %
Undefined Constants Analyze, All, Simple, CompatibilityPHP72, CI-checks 33 3 Minor 54 %
Catch Undefined Variable All, Analyze 1 1 Minor 0 %
Undefined Caught Exceptions Dead code, All 1 1 None 50 %
Throw Functioncall Analyze, All, Simple, Level 1, CI-checks 1 1 Major 3 %
Uncaught Exceptions Analyze, All 59 16 Minor 81 %
Unthrown Exception Analyze, Dead code, ClearPHP, All, Simple 6 1 Minor 43 %
Useless Catch All, Analyze, CI-checks 3 2 Minor 47 %
Missing Include All, Analyze 5 4 Critical 61 %
Aliases Usage Analyze, ClearPHP, OneFile, All, Simple, Level 1, CI-checks 7 2 Minor 42 %
Use Named Boolean In Argument Definition All, Analyze 54 18 Minor 84 %
Callback Needs Return All, Analyze, CI-checks 1 1 Major 51 %
Could Make A Function All, Analyze, Suggestions 692 107 Minor 75 %
Empty Function Analyze, All, Simple 2 2 Minor 71 %
Hardcoded Passwords Analyze, OneFile, Security, All, Simple, Level 3 137 126 Major 61 %
Mismatch Parameter Name All, Analyze, CompatibilityPHP80 126 93 Minor 0 %
Mismatched Default Arguments All, Analyze, Typechecks 1209 125 Minor 33 %
Modified Typed Parameter All, Analyze, ClassReview 2 2 Minor 0 %
Never Used Parameter All, Analyze, Suggestions 287 103 Minor 47 %
No Boolean As Default All, Analyze 54 18 Minor 84 %
No Return Used All, Analyze, Suggestions, Level 4 2 2 Minor 41 %
Only Variable For Reference All, Analyze, LintButWontExec 1 1 Critical 24 %
Only Variable Passed By Reference All, Analyze 5 2 Critical 40 %
Relay Function Analyze, All 127 56 Major 83 %
Too Many Local Variables All, Analyze 219 84 Minor 65 %
Typehinted References All, Analyze, CI-checks 10 2 Minor 12 %
Undefined Functions Analyze, All, CI-checks 290 45 Major 71 %
Unused Arguments Analyze, All, Simple 172 88 Major 89 %
Unused Functions Dead code, All, Simple 5 2 Minor 53 %
Useless Referenced Argument All, Analyze 8 3 Minor 57 %
Useless Return Analyze, OneFile, All, Simple, Level 4 1 1 Minor 29 %
Uses Default Values Analyze, All, Simple, CI-checks 2063 141 Minor 97 %
Methods Without Return All, Analyze 75 28 Minor 0 %
Wrong Argument Type All, Analyze, Typechecks 19 1 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple, CI-checks 12 5 Major 38 %
Wrong Returned Type All, Analyze, ClassReview, CI-checks 3 1 Minor 0 %
Wrong Type With Call All, Analyze, Typechecks, CI-checks 9 6 Minor 0 %
Undefined Interfaces Analyze, All, CI-checks 1 1 Major 67 %
Multiple Alias Definitions Analyze, All, Simple, CI-checks 7 5 Minor 42 %
Should Make Alias Analyze, OneFile, All, Simple, CI-checks 2 2 Minor 44 %
Unresolved Use Analyze, ClearPHP, All, Simple 141 133 Major 65 %
Unused Use Dead code, ClearPHP, All, Simple 129 123 Major 54 %
Use With Fully Qualified Name Analyze, Coding Conventions, PHP recommendations, All, Simple 323 115 Minor 16 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks 7 7 Major 55 %
Logical To in_array All, Analyze, Level 2 118 55 Minor 66 %
Pre-increment Analyze, Performances, All, Simple, Level 4, CI-checks 622 132 Minor 74 %
strpos() Too Much All, Analyze, CI-checks 1 1 Minor 46 %
array_key_exists() Works On Arrays All, CompatibilityPHP74, Analyze 262 79 Minor 0 %
Assumptions All, Analyze 25 17 Minor 0 %
Avoid mb_dectect_encoding() All, Analyze 1 1 Minor 0 %
Use random_int() Analyze, Security, All, CompatibilityPHP71, Simple, Level 2, CI-checks 9 2 Major 59 %
Detect Current Class All, Suggestions, CompatibilityPHP74 1 1 None 47 %
Don't Pollute Global Space All, Analyze 6 4 Minor 0 %
Use === null Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks 1 1 Minor 52 %
No Class In Global All, Analyze, CI-checks 2 2 Minor 78 %
PHP 7.0 Scalar Typehints All, CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 9 2 Critical 31 %
PHP Keywords As Names Analyze, All, Simple 130 4 Major 89 %
Scalar Are Not Arrays All, Analyze, CompatibilityPHP74, CI-checks 454 110 Minor 0 %
Should Use Coalesce Analyze, All, Simple, Suggestions, Level 3, CI-checks 32 8 Major 71 %
Unicode Escape Syntax CompatibilityPHP53, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, All 1 1 Major 0 %
Use Nullable Type All, Appinfo, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 1950 123 Major 21 %
Usort Sorting In PHP 7.0 CompatibilityPHP70, All 1 1 Major 46 %
Wrong Type For Native PHP Function All, Analyze, CI-checks 371 91 Minor 0 %
Configure Extract All, Security 1 1 Minor 22 %
Indirect Injection Security, All 1 1 Critical 21 %
Avoid sleep()/usleep() Security, All 9 2 Minor 39 %
Adding Zero Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks 30 21 Minor 33 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1, CI-checks 1 1 Major 52 %
Array_merge Needs Array Of Arrays All, Analyze 1214 114 Minor 0 %
Assign And Compare All, Analyze, CI-checks 1 1 Minor 17 %
Bail Out Early All, Analyze, OneFile, Simple, Level 4 26 22 Minor 92 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2, CI-checks 4 2 Minor 76 %
Buried Assignation Analyze, All 12 9 Minor 82 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1 19 14 Minor 55 %
Catch Overwrite Variable Analyze, ClearPHP, All, Simple 1 1 Minor 23 %
Check All Types All, Analyze 4 3 Major 68 %
Common Alternatives Analyze, All, Simple 40 20 Major 61 %
Could Be Else All, Analyze 20 16 Minor 48 %
Could Use Short Assignation Analyze, OneFile, Performances, All, Simple, CI-checks 37 21 Minor 60 %
Could Use str_repeat() All, Analyze, Level 1, Top10, CI-checks 2 2 Minor 12 %
Dont Mix ++ All, Analyze 2 2 Minor 43 %
Double Assignation Analyze, All 10 10 Major 55 %
Double Instructions Analyze, All, Simple 15 4 Minor 57 %
Drop Else After Return All, Analyze, OneFile, Simple, Suggestions, Level 4, CI-checks 25 20 Minor 70 %
Echo With Concat Performances, Analyze, All, Simple, Suggestions 2 2 Minor 58 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector, CI-checks 384 83 Minor 65 %
Empty Instructions Dead code, Analyze, All, Simple 28 1 Minor 43 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks 1 1 Major 60 %
Identical Consecutive Expression All, Analyze 22 9 Minor 58 %
If With Same Conditions Analyze, All, Simple, CI-checks 4 4 Major 44 %
Iffectations Analyze, All 1 1 Minor 80 %
Implode() Arguments Order All, Analyze, CI-checks 4 4 Minor 0 %
Inconsistent Elseif All, Analyze 1 1 Major 73 %
Indices Are Int Or String Analyze, OneFile, All, Simple, CI-checks 1 1 Major 18 %
Infinite Recursion All, Analyze 1 1 Major 0 %
Is Actually Zero All, Analyze, Level 2, CI-checks 3 3 Minor 32 %
Max Level Of Nesting All, Analyze 28 21 Minor 0 %
Merge If Then All, Analyze, CI-checks 391 110 Minor 0 %
Mismatched Ternary Alternatives All, Analyze, Suggestions, Level 4 4 4 Major 62 %
Missing New ? All, Analyze 133 132 Critical 5 %
Mixed Concat And Interpolation All, Coding Conventions, Analyze 13 5 Minor 43 %
Multiple Type Variable All, Analyze, Level 4 24 13 Minor 43 %
Multiply By One Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks 3 2 Minor 17 %
Nested Ifthen Analyze, All, RadwellCodes 397 94 Major 87 %
Nested Ternary Analyze, ClearPHP, All, Simple, Level 1, CI-checks 7 3 Major 20 %
No Choice Analyze, All, Simple, Level 2, Top10, CI-checks 22 18 Major 43 %
No Hardcoded Hash Analyze, Security, All, Simple 456 12 Critical 44 %
No Need For Else All, Analyze 32 21 Minor 74 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks 8 7 Minor 61 %
Avoid Substr() One Analyze, Performances, All, CompatibilityPHP71, Simple, Level 2, Suggestions, Top10, CI-checks 2 2 Minor 57 %
Variable Is Not A Condition All, Analyze 494 126 Minor 57 %
@ Operator Appinfo, ClearPHP, All, Analyze, Performances, CI-checks 5 2 Minor 66 %
Not Not Analyze, OneFile, All, Simple, CI-checks 1 1 Minor 13 %
Objects Don't Need References Analyze, ClearPHP, OneFile, All, Simple, Level 2, Top10, CI-checks 15 2 Minor 31 %
include_once() Usage Analyze, Appinfo, All 16 8 Minor 73 %
Several Instructions On The Same Line Analyze, All 2 1 Major 57 %
Repeated print() Analyze, All, Simple, Suggestions, Level 3, Top10, CI-checks 1 1 Major 49 %
Return True False Analyze, All, Simple, Level 1, CI-checks 9 9 Major 53 %
Same Conditions In Condition Analyze, All, Simple, CI-checks 7 7 Critical 49 %
Should Chain Exception Analyze, All, Simple, CI-checks 4 3 Minor 36 %
Should Make Ternary All, Analyze, OneFile, Simple, CI-checks 102 66 Minor 85 %
Preprocessable Analyze, All, Rector 339 73 Minor 86 %
Static Loop Analyze, All, Simple, Level 4 22 14 Minor 65 %
Suspicious Comparison All, Analyze, Level 3 278 14 Major 15 %
Switch To Switch Analyze, All, RadwellCodes, Simple 41 22 Minor 79 %
Unconditional Break In Loop All, Analyze, Level 3, CI-checks 2 1 Major 46 %
Unreachable Code Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3 1 1 Major 44 %
Unsupported Types With Operators All, Analyze, CompatibilityPHP80 1 1 Minor 0 %
Use Positive Condition All, Analyze, OneFile, Simple 84 43 Minor 81 %
Useless Casting All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks 1 1 Minor 37 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks 1 1 Minor 58 %
Useless Parenthesis Analyze, All, Simple, CI-checks 168 65 Minor 81 %
var_dump()... Usage Analyze, ClearPHP, Security, All, CI-checks 5 2 Critical 40 %
Hexadecimal In String CompatibilityPHP70, CompatibilityPHP71, All, Inventory 13 1 0 11 %
No Real Comparison Analyze, All, Simple, Level 2, Top10, CI-checks 40 14 Major 22 %
Should Typecast Analyze, OneFile, All, Simple, CI-checks 370 77 Minor 47 %
String May Hold A Variable Analyze, All, Simple 344 92 Minor 58 %
Missing Returntype In Method All, Typehints, Analyze, CI-checks 2 1 Minor 0 %
Assigned Twice All, Analyze 728 80 Minor 78 %
Overwritten Literals Analyze, All 843 80 Major 78 %
Strange Name For Variables All, Analyze 28 1 Minor 28 %
Undefined Variable All, Analyze, CI-checks 6 2 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10 4 3 Minor 87 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4 1112 122 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple 43 16 Minor 78 %