| Null Or Boolean Arrays |
All, Analyze, ChangedBehavior |
15 |
3 |
Minor |
0 % |
| Randomly Sorted Arrays |
All, Analyze, Level 4, Suggestions |
2 |
2 |
Minor |
41 % |
| Too Many Array Dimensions |
All, Analyze |
14 |
5 |
Minor |
0 % |
| Weak Type With Array |
All, Analyze |
171 |
39 |
Minor |
0 % |
| Modify Immutable |
All, Analyze, Attributes |
1 |
1 |
Minor |
0 % |
| Ambiguous Static |
All, Analyze, Semantics |
62 |
47 |
Minor |
66 % |
| Ambiguous Visibilities |
All, Analyze, Semantics |
138 |
61 |
Minor |
70 % |
| Avoid option arrays in constructors |
All, Analyze, ClassReview |
1 |
1 |
Minor |
0 % |
| Avoid Optional Properties |
All, Analyze |
58 |
28 |
Major |
84 % |
| Could Be Abstract Class |
All, Analyze, ClassReview |
6 |
6 |
Minor |
65 % |
| Class Could Be Final |
All, Analyze, ClassReview |
102 |
102 |
Minor |
96 % |
| Method Could Be Static |
All, Analyze, ClassReview |
177 |
69 |
Minor |
92 % |
| Could Inject Param |
All, Analyze, ClassReview |
9 |
8 |
Minor |
0 % |
| Dependant Abstract Classes |
All, Analyze, ClassReview |
2 |
2 |
Minor |
0 % |
| Don't Send $this In Constructor |
All, Analyze |
4 |
4 |
Minor |
41 % |
| Don't Unset Properties |
All, Analyze, Top10, php-cs-fixable, CI-checks, CE |
6 |
5 |
Major |
42 % |
| Hidden Nullable Typehint |
All, Analyze, ClassReview |
1 |
1 |
Minor |
0 % |
| Incompatible Signature Methods With Covariance |
All, Analyze |
8 |
8 |
Critical |
0 % |
| Assign Default To Properties |
Analyze, ClearPHP, All, Simple, Level 2 |
2 |
2 |
Minor |
71 % |
| Make Global A Property |
Analyze, All, Simple |
105 |
51 |
Minor |
37 % |
| Method Signature Must Be Compatible |
All, Analyze, LintButWontExec |
27 |
9 |
Critical |
53 % |
| No Public Access |
Analyze, All |
37 |
14 |
Minor |
61 % |
| Parent First |
All, Analyze, Suggestions |
3 |
3 |
Minor |
56 % |
| Property Could Be Local |
All, Analyze, ClassReview |
18 |
10 |
Minor |
76 % |
| Same Name For Property And Method |
All, Analyze, ClassReview, Semantics |
16 |
10 |
Minor |
0 % |
| Never Used Properties |
Analyze, All, Simple, Unused |
25 |
8 |
Minor |
71 % |
| Property Used In One Method Only |
All, Analyze |
56 |
22 |
Minor |
84 % |
| Should Use Local Class |
Analyze, ClearPHP, All, Simple |
198 |
73 |
Minor |
95 % |
| Static Methods Called From Object |
Analyze, All, Simple, CI-checks, IsPHP, IsStub, IsExt, CE |
4 |
1 |
Minor |
50 % |
| $this Belongs To Classes Or Traits |
Analyze, All, Simple, LintButWontExec |
46 |
9 |
Major |
32 % |
| Undefined Classes |
Analyze, All, Stubs, Undefined, IsPHP, IsStub, IsExt |
267 |
86 |
Major |
91 % |
| Undefined Parent |
Analyze, All, Simple, Undefined |
10 |
8 |
Minor |
45 % |
| Undefined Properties |
Analyze, ClearPHP, All, Simple, CI-checks, CompatibilityPHP82, Undefined, ChangedBehavior, CE |
873 |
113 |
Major |
61 % |
| Unfinished Object |
All, Analyze, ClassReview |
42 |
15 |
Major |
0 % |
| Unresolved Classes |
Analyze, All, Stubs |
13 |
9 |
Major |
76 % |
| Unresolved Instanceof |
Analyze, Dead code, ClearPHP, All, Simple, Top10 |
28 |
20 |
Major |
48 % |
| Unused Public Method |
All, Analyze |
90 |
54 |
Minor |
0 % |
| Use ::Class Operator |
All, Analyze, Performances, Simple, CI-checks, CE |
712 |
73 |
Minor |
71 % |
| Use Instanceof |
Analyze, All, Simple, CI-checks, CE |
30 |
11 |
Major |
63 % |
| Used Once Property |
All, Analyze |
2 |
2 |
Minor |
74 % |
| Useless Abstract Class |
Analyze, All, Simple |
1 |
1 |
Minor |
33 % |
| Use const |
Analyze, Coding Conventions, All, Top10, CI-checks, CE |
11 |
4 |
Minor |
54 % |
| Multiple Constant Definition |
Analyze, All, Simple, CI-checks, CE |
4 |
1 |
Minor |
41 % |
| Undefined Constants |
Analyze, All, Simple, CompatibilityPHP72, CI-checks, Stubs, Undefined, IsPHP, IsStub, IsExt, CE |
66 |
33 |
Minor |
71 % |
| Missing Include |
All, Analyze |
15 |
11 |
Critical |
65 % |
| Native Alias Functions Usage |
Analyze, ClearPHP, OneFile, All, Simple, Level 1, CI-checks, CE |
1 |
1 |
Minor |
20 % |
| Use Named Boolean In Argument Definition |
All, Analyze |
22 |
15 |
Minor |
84 % |
| Could Make A Function |
All, Analyze, Suggestions |
969 |
133 |
Minor |
66 % |
| Dont Collect Void |
All, Analyze, IsPHP, IsStub, IsExt |
19 |
9 |
Minor |
0 % |
| Empty Function |
Analyze, All, Simple |
4 |
3 |
Minor |
74 % |
| Hardcoded Passwords |
Analyze, OneFile, Security, All, Simple, Level 3 |
143 |
5 |
Major |
70 % |
| Mismatch Parameter Name |
All, Analyze, CompatibilityPHP80, CE |
4 |
4 |
Minor |
0 % |
| Mismatched Default Arguments |
All, Analyze, Typechecks |
12 |
8 |
Minor |
80 % |
| Mismatched Typehint |
All, Analyze, Typechecks |
1 |
1 |
Major |
66 % |
| Modified Typed Parameter |
All, Analyze, ClassReview |
3 |
3 |
Minor |
0 % |
| Never Called Parameter |
All, Analyze, Suggestions, Rector, Unused |
15 |
10 |
Minor |
92 % |
| No Boolean As Default |
All, Analyze |
23 |
16 |
Minor |
84 % |
| No Default For Referenced Parameter |
All, Analyze |
2 |
1 |
Minor |
0 % |
| No Return Used |
All, Analyze, Suggestions, Level 4 |
5 |
5 |
Minor |
69 % |
| Only Variable Passed By Reference |
All, Analyze, IsPHP, IsStub, IsExt |
1 |
1 |
Critical |
43 % |
| Relay Function |
Analyze, All |
20 |
8 |
Major |
84 % |
| Too Many Local Variables |
All, Analyze |
3 |
3 |
Minor |
64 % |
| Typehinted References |
All, Analyze, CI-checks, CE |
6 |
5 |
Minor |
37 % |
| Undefined Functions |
Analyze, All, CI-checks, Stubs, Undefined, IsPHP, IsStub, IsExt, CE |
2749 |
153 |
Major |
68 % |
| Unused Parameter |
Analyze, All, Simple, Unused |
94 |
55 |
Major |
90 % |
| Unused Returned Value |
All, Analyze, OneFile, Dead code, Simple, Unused |
3 |
2 |
Minor |
41 % |
| Useless Referenced Argument |
All, Analyze |
40 |
38 |
Minor |
58 % |
| Uses Default Values |
Analyze, All, Simple, CI-checks, IsPHP, IsStub, IsExt, CE |
893 |
125 |
Minor |
98 % |
| Wrong Number Of Arguments |
Analyze, OneFile, All, Simple, CI-checks, Stubs, IsPHP, IsStub, IsExt, CE |
63 |
36 |
Major |
81 % |
| Wrong Type Returned |
All, Analyze, ClassReview, CI-checks, LintButWontExec, CE |
53 |
24 |
Minor |
0 % |
| Wrong Type With Call |
All, Analyze, Typechecks, CI-checks, CE |
2 |
1 |
Minor |
0 % |
| Forgotten Interface |
All, Analyze |
1 |
1 |
Minor |
48 % |
| Undefined Interfaces |
Analyze, All, CI-checks, LintButWontExec, Undefined, IsPHP, IsStub, IsExt, CE |
28 |
20 |
Major |
72 % |
| Useless Interfaces |
Analyze, ClearPHP, All, Simple, ClassReview, Typechecks |
1 |
1 |
Minor |
59 % |
| Unresolved Use |
Analyze, ClearPHP, All, Simple, IsPHP, IsStub, IsExt |
1 |
1 |
Major |
69 % |
| No array_merge() In Loops |
Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE |
6 |
5 |
Major |
57 % |
| Logical To in_array |
All, Analyze, Level 2 |
3 |
3 |
Minor |
67 % |
| Pre-increment |
Analyze, Performances, All, Simple, Level 4, CI-checks, CE |
11 |
5 |
Minor |
74 % |
| array_key_exists() Works On Arrays |
All, CompatibilityPHP74, Analyze, CE |
4 |
3 |
Minor |
0 % |
| Assumptions |
All, Analyze |
5 |
4 |
Minor |
0 % |
| Use random_int() |
Analyze, Security, All, CompatibilityPHP71, Simple, Level 2, CI-checks, CE |
3 |
2 |
Major |
59 % |
| Don't Pollute Global Space |
All, Analyze |
201 |
133 |
Minor |
0 % |
| False To Array Conversion |
All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, Analyze |
1 |
1 |
Minor |
0 % |
| Wrong Parameter Type |
Analyze, OneFile, All, Simple, CI-checks, CE |
16 |
9 |
Major |
76 % |
| Use === null |
Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, CE |
3 |
3 |
Minor |
53 % |
| Possible Missing Subpattern |
All, Analyze, Top10, CI-checks, CE |
1 |
1 |
Minor |
45 % |
| No Class In Global |
All, Analyze, CI-checks, CE |
178 |
132 |
Minor |
77 % |
| No Null For Native PHP Functions |
All, Analyze, CompatibilityPHP81, Deprecated |
8 |
5 |
Minor |
0 % |
| Only Container For Reference |
All, Analyze, LintButWontExec, IsPHP, IsStub, IsExt |
1 |
1 |
Critical |
0 % |
| Scalar Are Not Arrays |
All, Analyze, CompatibilityPHP74, CI-checks, CE |
10 |
2 |
Minor |
0 % |
| Should Use Coalesce |
Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE |
17 |
14 |
Major |
71 % |
| Too Many Native Calls |
All, Analyze, IsPHP, IsExt |
1 |
1 |
Minor |
49 % |
| Avoid Using stdClass |
All, Analyze, OneFile, Simple, Level 4 |
4 |
2 |
Minor |
46 % |
| Wrong Type For Native PHP Function |
All, Analyze, CI-checks, CE |
28 |
16 |
Minor |
0 % |
| Should Use Prepared Statement |
Analyze, Security, All, Simple, CI-checks, CE |
14 |
5 |
Major |
28 % |
| Altering Foreach Without Reference |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE |
7 |
6 |
Major |
56 % |
| Alternative Syntax Consistence |
All, Analyze |
5 |
1 |
Major |
21 % |
| Comparison Is Always The Same |
All, Analyze |
2 |
1 |
Minor |
0 % |
| Array_merge Needs Array Of Arrays |
All, Analyze |
20 |
15 |
Minor |
0 % |
| Bail Out Early |
All, Analyze, OneFile, Simple, Level 4 |
108 |
61 |
Minor |
64 % |
| Strict Comparison With Booleans |
Analyze, All, Simple, Suggestions, Level 2, CI-checks, CE |
88 |
43 |
Minor |
77 % |
| Buried Assignation |
Analyze, All |
68 |
38 |
Minor |
84 % |
| Cast To Boolean |
Analyze, OneFile, All, Simple, Level 1 |
8 |
7 |
Minor |
56 % |
| Check All Types |
All, Analyze |
6 |
6 |
Major |
69 % |
| Check Division By Zero |
All, Analyze |
2 |
2 |
Minor |
0 % |
| Check JSON |
All, Analyze, CI-checks, CE |
4 |
3 |
Major |
65 % |
| Common Alternatives |
Analyze, All, Simple |
9 |
8 |
Major |
80 % |
| Concat Empty String |
All, Analyze, OneFile |
1 |
1 |
Minor |
0 % |
| Could Be Else |
All, Analyze |
1 |
1 |
Minor |
49 % |
| Could Be Static |
Analyze, OneFile, All, ClassReview |
10 |
8 |
Major |
23 % |
| Could Use Short Assignation |
Analyze, OneFile, Performances, All, Simple, CI-checks, Rector, CE |
1 |
1 |
Minor |
63 % |
| Dangling Array References |
PHP recommendations, Analyze, ClearPHP, All, Simple, Level 1, Top10, CI-checks, CE |
2 |
2 |
Major |
46 % |
| Dont Change The Blind Var |
All, Analyze |
10 |
8 |
Minor |
73 % |
| Don't Read And Write In One Expression |
All, Analyze, CompatibilityPHP73, CompatibilityPHP74, CE |
8 |
5 |
Critical |
38 % |
| Dont Reuse Foreach Source |
All, Analyze |
3 |
3 |
Minor |
0 % |
| Double Assignation |
Analyze, All |
2 |
2 |
Major |
59 % |
| Double Checks |
All, Analyze |
9 |
6 |
Minor |
0 % |
| Double Instructions |
Analyze, All, Simple |
1 |
1 |
Minor |
57 % |
| Drop Else After Return |
All, Analyze, OneFile, Simple, Suggestions, Level 4, CI-checks, CE |
3 |
3 |
Minor |
70 % |
| Echo With Concat |
Performances, Analyze, All, Simple, Suggestions |
20 |
11 |
Minor |
60 % |
| Else If Versus Elseif |
Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE |
2 |
2 |
Minor |
66 % |
| Empty Instructions |
Dead code, Analyze, All, Simple |
56 |
40 |
Minor |
57 % |
| Exit() Usage |
Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, CE |
29 |
17 |
Major |
61 % |
| Global Usage |
Analyze, Appinfo, ClearPHP, All, CE |
119 |
55 |
Minor |
52 % |
| Iffectations |
Analyze, All |
110 |
37 |
Minor |
80 % |
| Implied If |
Analyze, ClearPHP, All, Simple, CI-checks, Rector, CE |
7 |
7 |
Major |
33 % |
| Implode() Arguments Order |
All, Analyze, CI-checks, ChangedBehavior, CE |
1 |
1 |
Minor |
0 % |
| Inconsistent Elseif |
All, Analyze |
16 |
16 |
Major |
73 % |
| Long Arguments |
All, Analyze |
49 |
32 |
Minor |
68 % |
| Max Level Of Nesting |
All, Analyze |
22 |
16 |
Minor |
0 % |
| Merge If Then |
All, Analyze, CI-checks, CE |
21 |
18 |
Minor |
0 % |
| Mismatched Ternary Alternatives |
All, Analyze, Suggestions, Level 4 |
6 |
3 |
Major |
64 % |
| Missing Assignation In Command |
All, Analyze |
53 |
28 |
Minor |
0 % |
| Maybe Missing New |
All, Analyze |
2 |
2 |
Critical |
57 % |
| Mixed Concat And Interpolation |
All, Coding Conventions, Analyze |
1 |
1 |
Minor |
45 % |
| Modernize Empty With Expression |
All, Analyze, OneFile, Simple |
123 |
53 |
Minor |
63 % |
| Multiple Type Variable |
All, Analyze, Level 4 |
3 |
2 |
Minor |
58 % |
| Nested Ifthen |
Analyze, All, RadwellCodes |
61 |
28 |
Major |
84 % |
| Nested Ternary |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE |
8 |
5 |
Major |
50 % |
| Next Month Trap |
All, Analyze, Top10, CI-checks, CE |
1 |
1 |
Major |
8 % |
| Don't Change Incomings |
Analyze, All |
2 |
2 |
Minor |
44 % |
| No Direct Usage |
Analyze, All, Simple |
1 |
1 |
Major |
39 % |
| No Hardcoded Hash |
Analyze, Security, All, Simple |
1 |
1 |
Critical |
45 % |
| No isset() With empty() |
All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks, CE |
1 |
1 |
Minor |
30 % |
| No Need For Else |
All, Analyze |
5 |
5 |
Minor |
74 % |
| No Parenthesis For Language Construct |
Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, CE |
2 |
2 |
Minor |
62 % |
| Avoid Substr() One |
Analyze, Performances, All, CompatibilityPHP71, Simple, Level 2, Suggestions, Top10, CI-checks, CE |
1 |
1 |
Minor |
58 % |
| Variable Is Not A Condition |
All, Analyze |
118 |
51 |
Minor |
93 % |
| Objects Don't Need References |
Analyze, ClearPHP, OneFile, All, Simple, Level 2, Top10, CI-checks, CE |
65 |
44 |
Minor |
40 % |
| include_once() Usage |
Analyze, Appinfo, All, CE |
15 |
10 |
Minor |
73 % |
| Several Instructions On The Same Line |
Analyze, All |
5 |
3 |
Major |
56 % |
| Printf Number Of Arguments |
All, Analyze, CI-checks, CE |
1 |
1 |
Minor |
41 % |
| Repeated print() |
Analyze, All, Simple, Suggestions, Level 3, Top10, CI-checks, CE |
7 |
5 |
Major |
50 % |
| Repeated Regex |
All, Analyze, Level 1, CI-checks, CE |
2 |
1 |
Minor |
47 % |
| 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 |
3 |
3 |
Critical |
55 % |
| Should Use Ternary Operator |
All, Analyze, OneFile, Simple, CI-checks, CE |
18 |
14 |
Minor |
86 % |
| Preprocessable |
Analyze, All, Rector |
206 |
96 |
Minor |
85 % |
| Static Loop |
Analyze, All, Simple, Level 4 |
2 |
2 |
Minor |
67 % |
| Strpos()-like Comparison |
Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE |
2 |
2 |
Major |
54 % |
| Switch Without Default |
Analyze, ClearPHP, All, Simple, CI-checks, CE |
7 |
5 |
Major |
69 % |
| Test Then Cast |
All, Analyze |
1 |
1 |
Major |
34 % |
| Timestamp Difference |
Analyze, All, Simple, Level 3, CI-checks, CE |
2 |
2 |
Major |
49 % |
| Unpreprocessed Values |
Analyze, OneFile, ClearPHP, All, Simple, Performances |
1 |
1 |
Minor |
30 % |
| Unsupported Types With Operators |
All, Analyze, CompatibilityPHP80, CE |
17 |
12 |
Minor |
0 % |
| Unused Global |
Analyze, All, Simple, Unused |
1 |
1 |
Minor |
22 % |
| Use Positive Condition |
All, Analyze, OneFile, Simple |
12 |
10 |
Minor |
82 % |
| Use Same Types For Comparisons |
All, Analyze |
1 |
1 |
Minor |
0 % |
| Useless Type Casting |
All, PHP recommendations, Analyze, OneFile, RadwellCodes, Simple, Level 4, CI-checks, CE |
7 |
4 |
Minor |
47 % |
| Useless Global |
Analyze, OneFile, All, Simple, Level 2 |
19 |
12 |
Minor |
27 % |
| Useless Instructions |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE |
13 |
10 |
Minor |
63 % |
| Useless Parenthesis |
Analyze, All, Simple, CI-checks, CE |
12 |
12 |
Minor |
81 % |
| Dependant Trait |
Analyze, All, Level 3 |
1 |
1 |
Minor |
28 % |
| Should Typecast |
Analyze, OneFile, All, Simple, CI-checks, Rector, CE |
6 |
4 |
Minor |
49 % |
| String May Hold A Variable |
Analyze, All, Simple |
7 |
4 |
Minor |
59 % |
| Missing Some Returntype |
All, Typehints, Analyze, CI-checks, CE |
6 |
5 |
Minor |
0 % |
| Wrong Type With Default |
All, Analyze, LintButWontExec, ClassReview |
1 |
1 |
Minor |
0 % |
| Assigned Twice |
All, Analyze |
40 |
14 |
Minor |
79 % |
| Overwritten Literals |
Analyze, All |
48 |
16 |
Major |
79 % |
| Recycled Variables |
All, Analyze |
4 |
2 |
Minor |
0 % |
| Undefined Variable |
All, Analyze, CI-checks, Undefined, CE |
343 |
47 |
Minor |
77 % |
| Used Once Variables (In Scope) |
Analyze, ClearPHP, OneFile, All, Simple, Level 4, CE |
102 |
48 |
Minor |
95 % |
| Written Only Variables |
Analyze, OneFile, All, Simple, Unused |
11 |
7 |
Minor |
87 % |