PHP Static analysis for arc2

Label Recipes Issues Files Severity Frequence
Randomly Sorted Arrays All, Analyze, Level 4, Suggestions 4 1 Minor 41 %
String Initialization All, CompatibilityPHP71 47 7 Minor 33 %
Too Many Array Dimensions All, Analyze 8 3 Minor 0 %
Ambiguous Static All, Analyze 24 12 Minor 64 %
Avoid Optional Properties All, Analyze 76 25 Major 83 %
Could Be Abstract Class All, Analyze, ClassReview 19 19 Minor 65 %
Class Could Be Final All, Analyze, ClassReview 43 43 Minor 95 %
Method Could Be Static All, Analyze, ClassReview 68 34 Minor 95 %
Don't Unset Properties All, Analyze, Top10, php-cs-fixable 21 12 Major 40 %
Incompatible Signature Methods With Covariance All, Analyze 2 2 Critical 0 %
Assign Default To Properties Analyze, ClearPHP, All, Simple, Level 2 1 1 Minor 49 %
Make Global A Property Analyze, All, Simple 2 1 Minor 33 %
Method Signature Must Be Compatible All, Analyze, LintButWontExec 7 7 Critical 50 %
Non Nullable Getters All, Analyze, ClassReview 33 17 Minor 0 %
Forgotten Visibility Analyze, ClearPHP, All, Simple, Level 1 964 64 Minor 42 %
Could Use self Analyze, All, Simple, Suggestions, Level 3, ClassReview 35 1 Minor 57 %
Should Use Local Class Analyze, ClearPHP, All, Simple 70 26 Minor 94 %
Wrong Access Style to Property All, Analyze, Level 2, ClassReview 585 55 Critical 3 %
Unused Methods Dead code, All, Simple 189 47 Minor 95 %
Use Class Operator All, Analyze, Performances, Simple 8 5 Minor 74 %
Illegal Name For Method All, Analyze, OneFile, Simple 63 63 Major 19 %
Aliases Usage Analyze, ClearPHP, OneFile, All, Simple, Level 1 11 7 Minor 42 %
Use Named Boolean In Argument Definition All, Analyze 11 8 Minor 84 %
Could Make A Function All, Analyze, Suggestions 110 35 Minor 75 %
Empty Function Analyze, All, Simple 10 5 Minor 71 %
Mismatched Default Arguments All, Analyze, Typechecks 93 26 Minor 33 %
Never Used Parameter All, Analyze, Suggestions 63 27 Minor 47 %
No Boolean As Default All, Analyze 11 8 Minor 84 %
No Return Used All, Analyze, Suggestions, Level 4 4 4 Minor 41 %
Relay Function Analyze, All 30 24 Major 83 %
Too Many Local Variables All, Analyze 17 10 Minor 65 %
Unused Arguments Analyze, All, Simple 37 14 Major 89 %
Useless Referenced Argument All, Analyze 68 63 Minor 57 %
Uses Default Values Analyze, All, Simple 879 52 Minor 97 %
Methods Without Return All, Analyze 218 63 Minor 0 %
Wrong Number Of Arguments Analyze, OneFile, All, Simple 50 11 Major 38 %
Wrong Optional Parameter Analyze, All, Simple, Level 1 1 1 Minor 38 %
No array_merge() In Loops Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10 11 8 Major 55 %
Logical To in_array All, Analyze, Level 2 5 4 Minor 66 %
Pre-increment Analyze, Performances, All, Simple, Level 4 57 28 Minor 74 %
strpos() Too Much All, Analyze 8 7 Minor 46 %
Use random_int() Analyze, Security, All, CompatibilityPHP71, Simple, Level 2 27 11 Major 59 %
Crc32() Might Be Negative All, PHP recommendations, Analyze 1 1 Major 3 %
Wrong Parameter Type Analyze, OneFile, All, Simple 13 4 Major 45 %
Possible Missing Subpattern All, Analyze, Top10 6 4 Minor 40 %
No Class In Global All, Analyze 66 66 Minor 78 %
PHP Keywords As Names Analyze, All, Simple 153 14 Major 89 %
Scalar Are Not Arrays All, Analyze, CompatibilityPHP74 5 1 Minor 0 %
Should Use Coalesce Analyze, All, Simple, Suggestions, Level 3 58 21 Major 71 %
Unknown Pcre2 Option All, Analyze, CompatibilityPHP73 2 1 Minor 15 %
Use Nullable Type All, Appinfo, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56 4 1 Major 21 %
Avoid Using stdClass All, Analyze, OneFile, Simple, Level 4 1 1 Minor 45 %
Wrong Type For Native PHP Function All, Analyze 904 52 Minor 0 %
Always Anchor Regex All, Security 75 24 Major 65 %
Avoid Those Hash Functions Security, All 42 19 Major 60 %
Compare Hash Security, ClearPHP, All 1 1 Major 14 %
Direct Injection Security, All 4 2 Major 41 %
Encoded Simple Letters All, Security 9 4 Minor 40 %
Indirect Injection Security, All 2 1 Critical 21 %
Avoid sleep()/usleep() Security, All 4 2 Minor 39 %
No Weak SSL Crypto All, Security 2 1 Minor 0 %
Should Use Prepared Statement Analyze, Security, All, Simple 17 8 Major 22 %
Unserialize Second Arg Security, All 1 1 Critical 49 %
Adding Zero Analyze, OneFile, ClearPHP, All, Simple, Level 1 13 6 Minor 33 %
Altering Foreach Without Reference Analyze, ClearPHP, All, Simple, Level 1 6 5 Major 52 %
Array_merge Needs Array Of Arrays All, Analyze 21 8 Minor 0 %
Same Variables Foreach All, Analyze 1 1 Minor 12 %
Bail Out Early All, Analyze, OneFile, Simple, Level 4 12 6 Minor 92 %
Strict Comparison With Booleans Analyze, All, Simple, Suggestions, Level 2 82 26 Minor 76 %
Buried Assignation Analyze, All 215 28 Minor 82 %
Cast To Boolean Analyze, OneFile, All, Simple, Level 1 26 16 Minor 55 %
Check All Types All, Analyze 7 7 Major 68 %
Check JSON All, Analyze 8 6 Major 64 %
Common Alternatives Analyze, All, Simple 7 6 Major 61 %
Concat Empty String All, Analyze, OneFile 14 4 Minor 0 %
Could Be Else All, Analyze 1 1 Minor 48 %
Could Use __DIR__ Analyze, All, Simple, Suggestions, Level 3, php-cs-fixable 1 1 Major 56 %
Could Use Short Assignation Analyze, OneFile, Performances, All, Simple 3 3 Minor 60 %
Dont Change The Blind Var All, Analyze 20 11 Minor 72 %
Don't Read And Write In One Expression All, Analyze, CompatibilityPHP73, CompatibilityPHP74 8 6 Critical 38 %
Double Assignation Analyze, All 7 7 Major 55 %
Double Instructions Analyze, All, Simple 1 1 Minor 57 %
Drop Else After Return All, Analyze, OneFile, Simple, Suggestions, Level 4 30 15 Minor 70 %
Echo With Concat Performances, Analyze, All, Simple, Suggestions 1 1 Minor 58 %
Else If Versus Elseif Analyze, All, Simple, php-cs-fixable, Rector 9 5 Minor 65 %
Empty Blocks Analyze, All, Simple 4 4 Minor 57 %
Empty Instructions Dead code, Analyze, All, Simple 3 3 Minor 43 %
Eval() Usage Analyze, Appinfo, Performances, OneFile, ClearPHP, All, Simple, Security 2 1 Major 37 %
eval() Without Try Analyze, All, Simple, Level 3, Security 2 1 Critical 34 %
Exit() Usage Analyze, Appinfo, OneFile, ClearPHP, All 3 3 Major 60 %
Overwritten Source And Value All, Analyze, OneFile 1 1 Minor 0 %
Global Usage Analyze, Appinfo, ClearPHP, All 2 1 Minor 52 %
Htmlentities Calls Analyze, All, Simple 30 9 Major 39 %
Identical Conditions Analyze, All, Simple 1 1 Critical 28 %
Identical Consecutive Expression All, Analyze 1 1 Minor 58 %
If With Same Conditions Analyze, All, Simple 4 3 Major 44 %
Iffectations Analyze, All 434 32 Minor 80 %
Implode() Arguments Order All, Analyze 2 2 Minor 0 %
Inconsistent Elseif All, Analyze 19 11 Major 73 %
Infinite Recursion All, Analyze 9 5 Major 0 %
Invalid Regex All, Analyze 9 7 Major 18 %
list() May Omit Variables Analyze, All, Simple, Suggestions, Level 3 8 5 Minor 37 %
Long Arguments All, Analyze 4 4 Minor 67 %
Max Level Of Nesting All, Analyze 40 22 Minor 0 %
Merge If Then All, Analyze 61 19 Minor 0 %
Modernize Empty With Expression All, Analyze, OneFile, Simple 1 1 Minor 56 %
Multiply By One Analyze, OneFile, ClearPHP, All, Simple, Level 1 2 2 Minor 17 %
Nested Ifthen Analyze, All, RadwellCodes 111 31 Major 87 %
Nested Ternary Analyze, ClearPHP, All, Simple, Level 1 19 9 Major 20 %
Don't Change Incomings Analyze, All 1 1 Minor 44 %
No Hardcoded Path Analyze, ClearPHP, All, Simple 3 2 Major 33 %
No Need For Else All, Analyze 43 16 Minor 74 %
No Parenthesis For Language Construct Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2 4 1 Minor 61 %
Avoid Substr() One Analyze, Performances, All, CompatibilityPHP71, Simple, Level 2, Suggestions, Top10 4 3 Minor 57 %
Variable Is Not A Condition All, Analyze 412 54 Minor 57 %
@ Operator Appinfo, ClearPHP, All, Analyze, Performances 25 9 Minor 66 %
include_once() Usage Analyze, Appinfo, All 4 1 Minor 73 %
Several Instructions On The Same Line Analyze, All 5 4 Major 57 %
Print And Die Analyze, All, Simple 1 1 Minor 29 %
Printf Number Of Arguments All, Analyze 4 1 Minor 42 %
Queries In Loops Analyze, OneFile, All, Simple, Level 1, Top10 5 2 Major 7 %
Repeated Regex All, Analyze, Level 1 99 32 Minor 47 %
Return True False Analyze, All, Simple, Level 1 4 3 Major 53 %
Same Conditions In Condition Analyze, All, Simple 3 3 Critical 49 %
Should Make Ternary All, Analyze, OneFile, Simple 23 15 Minor 85 %
Preprocessable Analyze, All, Rector 5 4 Minor 86 %
Static Loop Analyze, All, Simple, Level 4 2 2 Minor 65 %
Strpos()-like Comparison Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10 15 6 Major 54 %
Switch To Switch Analyze, All, RadwellCodes, Simple 7 6 Minor 79 %
Switch Without Default Analyze, ClearPHP, All, Simple 1 1 Major 68 %
Unchecked Resources Analyze, ClearPHP, All, Simple, Level 2 6 6 Major 49 %
Unconditional Break In Loop All, Analyze, Level 3 7 6 Major 46 %
Unreachable Code Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3 7 5 Major 44 %
Use Constant PHP recommendations, All, Analyze, php-cs-fixable 1 1 Minor 0 %
Use Positive Condition All, Analyze, OneFile, Simple 12 11 Minor 81 %
Useless Instructions Analyze, OneFile, ClearPHP, All, Simple, Level 1 22 8 None 58 %
Useless Parenthesis Analyze, All, Simple 32 10 Minor 81 %
preg_replace With Option e Analyze, CompatibilityPHP70, Security, CompatibilityPHP71, All, Simple, CompatibilityPHP72 7 6 Major 8 %
String May Hold A Variable Analyze, All, Simple 4 2 Minor 58 %
Assigned Twice All, Analyze 207 22 Minor 78 %
Overwritten Literals Analyze, All 218 22 Major 78 %
Undefined Variable All, Analyze 21 3 Minor 77 %
Used Once Variables Analyze, OneFile, All, Simple, Top10 10 5 Minor 87 %
Used Once Variables (In Scope) Analyze, ClearPHP, OneFile, All, Simple, Level 4 137 37 Minor 95 %
Written Only Variables Analyze, OneFile, All, Simple 107 30 Minor 78 %