| Ambiguous Array Index |
Analyze, All, Simple, Level 2, Semantics, ChangedBehavior |
5 |
3 |
Minor |
10 % |
| Append And Assign Arrays |
Analyze, Internal, All, ChangedBehavior |
35 |
28 |
Minor |
0 % |
| Multiple Index Definition |
Analyze, OneFile, All, Simple, Rector, CI-checks, CE |
2 |
2 |
Minor |
33 % |
| Null Or Boolean Arrays |
Analyze, All |
129 |
19 |
Minor |
0 % |
| Randomly Sorted Arrays |
Analyze, All, Suggestions, Level 4 |
65 |
34 |
Minor |
41 % |
| Too Many Array Dimensions |
Analyze, All |
245 |
31 |
Minor |
0 % |
| Weak Type With Array |
Analyze, All, ChangedBehavior |
6634 |
438 |
Minor |
0 % |
| Abstract Or Implements |
Analyze, All, LintButWontExec, ChangedBehavior |
2 |
2 |
Major |
24 % |
| Ambiguous Static |
Analyze, All, Semantics, ChangedBehavior |
980 |
428 |
Minor |
66 % |
| Ambiguous Visibilities |
Analyze, All, Semantics, ChangedBehavior |
263 |
138 |
Minor |
70 % |
| Anonymous Classes |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE, ChangedBehavior |
9 |
6 |
Major |
16 % |
| Avoid option arrays in constructors |
Analyze, All, ClassReview, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Avoid Optional Properties |
Analyze, All, ChangedBehavior |
95 |
44 |
Major |
84 % |
| Cant Instantiate Non Class |
Analyze, All, ClassReview |
4 |
3 |
Minor |
0 % |
| Clone With Non-Object |
Analyze, All, LintButWontExec, ChangedBehavior |
1 |
1 |
Minor |
33 % |
| Const Visibility Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, ChangedBehavior |
45 |
15 |
Minor |
24 % |
| Could Be Abstract Class |
Analyze, All, ClassReview, ChangedBehavior |
7 |
7 |
Minor |
65 % |
| Class Could Be Final |
Analyze, All, ClassReview, ChangedBehavior |
726 |
720 |
Minor |
96 % |
| Method Could Be Static |
Analyze, All, ClassReview, ChangedBehavior |
960 |
436 |
Minor |
92 % |
| Could Inject Parameter |
Analyze, All, ClassReview, ChangedBehavior |
66 |
37 |
Minor |
0 % |
| Cyclic References |
Analyze, All, ClassReview, ChangedBehavior |
3 |
2 |
Minor |
0 % |
| Dependant Abstract Classes |
Analyze, All, ClassReview, ChangedBehavior |
13 |
13 |
Minor |
0 % |
| Different Argument Counts |
Analyze, All, ClassReview, ChangedBehavior |
9 |
9 |
Minor |
0 % |
| Don't Send $this In Constructor |
Analyze, All, ChangedBehavior |
3 |
3 |
Minor |
41 % |
| Don't Unset Properties |
Analyze, All, Top10, php-cs-fixable, CI-checks, CE, ChangedBehavior |
53 |
21 |
Major |
42 % |
| Empty Classes |
Analyze, All, Simple, ChangedBehavior |
4 |
4 |
Minor |
60 % |
| Implicit Nullable Type |
Analyze, All, ClassReview, ChangedBehavior |
229 |
88 |
Minor |
0 % |
| Incompatible Signature Methods With Covariance |
Analyze, All, ChangedBehavior |
41 |
41 |
Critical |
0 % |
| Inherited Property Type Must Match |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
392 |
158 |
Minor |
0 % |
| Instantiating Abstract Class |
Analyze, All, Simple |
22 |
13 |
Major |
13 % |
| Locally Unused Property |
Dead code, All, Simple, Unused, ChangedBehavior |
1219 |
415 |
Minor |
76 % |
| Assign Default To Properties |
Analyze, ClearPHP, All, Simple, Level 2, ChangedBehavior |
46 |
20 |
Minor |
71 % |
| Make Global A Property |
Analyze, All, Simple, ChangedBehavior |
1443 |
325 |
Minor |
37 % |
| Method Signature Must Be Compatible |
Analyze, All, LintButWontExec, ChangedBehavior |
22 |
17 |
Critical |
53 % |
| Mismatch Properties Types |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
77 |
25 |
Minor |
0 % |
| Missing Abstract Method |
Analyze, All, ClassReview |
13 |
4 |
Minor |
0 % |
| New Object Then Immediate Call |
Analyze, All, ClassReview |
741 |
300 |
Minor |
0 % |
| No Public Access |
Analyze, All, ChangedBehavior |
1015 |
370 |
Minor |
61 % |
| Non Nullable Getters |
Analyze, All, ClassReview, ChangedBehavior |
6 |
4 |
Minor |
0 % |
| Parent First |
Analyze, All, Suggestions, ChangedBehavior |
9 |
9 |
Minor |
56 % |
| Parent Is Not Static |
Analyze, All, ClassReview, ChangedBehavior |
3 |
3 |
Major |
0 % |
| Property Could Be Local |
Analyze, All, ClassReview, ChangedBehavior |
48 |
33 |
Minor |
76 % |
| Same Name For Property And Method |
Analyze, All, ClassReview, Semantics, ChangedBehavior |
28 |
22 |
Minor |
0 % |
| Never Used Properties |
Analyze, All, Simple, Unused, ChangedBehavior |
61 |
34 |
Minor |
71 % |
| Property Used In One Method Only |
Analyze, All, ChangedBehavior |
170 |
83 |
Minor |
84 % |
| Scalar Or Object Property |
Analyze, All |
2 |
2 |
Minor |
32 % |
| Could Use self |
Analyze, All, Simple, Suggestions, Level 3, ClassReview, ChangedBehavior |
735 |
115 |
Minor |
63 % |
| Should Use Local Class |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
1282 |
299 |
Minor |
95 % |
| Static Methods Called From Object |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
2879 |
303 |
Minor |
50 % |
| Too Many Dereferencing |
Analyze, All, ChangedBehavior |
13 |
13 |
Minor |
0 % |
| Undefined Classes |
Analyze, All, Stubs, Undefined |
2052 |
461 |
Major |
91 % |
| Undefined Class Constants |
Analyze, All, LintButWontExec, CI-checks, CE, Stubs, ChangedBehavior, Undefined |
308 |
54 |
Major |
62 % |
| Undefined Parent |
Analyze, All, Simple, Undefined |
2 |
2 |
Minor |
45 % |
| Undefined Properties |
Analyze, ClearPHP, All, Simple, CI-checks, CE, CompatibilityPHP82, ChangedBehavior, Undefined |
1240 |
197 |
Major |
61 % |
| Undefined static:: Or self:: |
Analyze, All, Simple, ChangedBehavior, Undefined |
35 |
10 |
Minor |
35 % |
| Undefined static ::class |
Analyze, All, CI-checks, CE, ChangedBehavior, Undefined |
4 |
2 |
Major |
36 % |
| Unfinished Object |
Analyze, All, ClassReview, ChangedBehavior |
65 |
32 |
Major |
0 % |
| Unreachable Method |
Analyze, Dead code, All, ClassReview, Unused, ChangedBehavior |
5 |
4 |
Minor |
0 % |
| Unresolved Catch |
Dead code, ClearPHP, All, ChangedBehavior |
15 |
9 |
Major |
52 % |
| Unresolved Classes |
Analyze, All, Stubs, ChangedBehavior |
274 |
81 |
Major |
76 % |
| Unresolved Instanceof |
Analyze, Dead code, ClearPHP, All, Simple, Top10, ChangedBehavior |
53 |
18 |
Major |
48 % |
| Unused Class Constant |
Analyze, All, ClassReview, Unused, ChangedBehavior |
25 |
16 |
Minor |
0 % |
| Unused Methods |
Dead code, All, Simple, Unused, ChangedBehavior |
2953 |
592 |
Minor |
96 % |
| Unused Private Methods |
Dead code, OneFile, All, Simple, Unused, ChangedBehavior |
3 |
3 |
Minor |
50 % |
| Unused Private Properties |
Dead code, OneFile, All, Simple, Unused |
9 |
9 |
Minor |
51 % |
| Unused Protected Methods |
Dead code, All, Unused, ChangedBehavior |
220 |
122 |
Major |
68 % |
| Unused Public Methods |
Analyze, All, ChangedBehavior |
3120 |
579 |
Minor |
0 % |
| Use ::Class Operator |
Analyze, Performances, All, Simple, CI-checks, CE, ChangedBehavior |
10667 |
896 |
Minor |
71 % |
| Use Instanceof |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
22 |
10 |
Major |
63 % |
| Used Once Property |
Analyze, All, ChangedBehavior |
2 |
2 |
Minor |
74 % |
| Useless Abstract Class |
Analyze, All, Simple, ChangedBehavior |
2 |
2 |
Minor |
33 % |
| Useless Method |
Analyze, All, ChangedBehavior |
18 |
12 |
Minor |
0 % |
| Weak Typing |
Analyze, All, ChangedBehavior |
101 |
64 |
Minor |
47 % |
| Wrong Typed Property Default |
Analyze, All, LintButWontExec, ClassReview, CI-checks, CE |
29 |
15 |
Minor |
0 % |
| Use const |
Analyze, Coding Conventions, All, Top10, CI-checks, CE |
52 |
12 |
Minor |
54 % |
| Constant Used Only Once |
Analyze, All, ChangedBehavior |
120 |
53 |
Minor |
0 % |
| Multiple Constant Definition |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
17 |
13 |
Minor |
41 % |
| Undefined Constants |
stubs |
273 |
61 |
Minor |
71 % |
| Could Be A Constant |
All, Dump, ChangedBehavior |
1859 |
286 |
Minor |
0 % |
| Undefined Caught Exceptions |
Dead code, All, ChangedBehavior |
17 |
11 |
None |
53 % |
| Caught Exceptions |
All, Dump, ChangedBehavior |
85 |
42 |
None |
100 % |
| Converted Exceptions |
Analyze, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Could Drop Variable |
Dead code, All, Suggestions, ChangedBehavior |
26 |
17 |
Minor |
0 % |
| Overwritten Exceptions |
Analyze, All, Simple, Suggestions, Level 4, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
22 % |
| Rethrown Exceptions |
Dead code, All, ChangedBehavior |
2 |
2 |
Minor |
20 % |
| Throw Raw Exceptions |
Analyze, All, Suggestions, ChangedBehavior |
170 |
77 |
Minor |
0 % |
| Try Without Catch |
All, Dump, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Uncaught Exceptions |
Analyze, All, ChangedBehavior |
227 |
96 |
Minor |
84 % |
| Useless Try |
Analyze, All, ChangedBehavior |
22 |
16 |
Minor |
0 % |
| Missing Include |
Analyze, All, ChangedBehavior |
334 |
311 |
Critical |
65 % |
| Native Alias Functions Usage |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
19 |
6 |
Minor |
20 % |
| Use Named Boolean In Argument Definition |
Analyze, All, ChangedBehavior |
443 |
152 |
Minor |
84 % |
| Callback Function Needs Return |
Analyze, All, CI-checks, CE |
2 |
2 |
Major |
42 % |
| Can't Call Generator |
Analyze, All |
1 |
1 |
Minor |
0 % |
| Cancelled Parameter |
Analyze, All, ChangedBehavior |
6 |
5 |
Minor |
0 % |
| Could Make A Function |
Analyze, All, Suggestions, ChangedBehavior |
6665 |
752 |
Minor |
66 % |
| Deep Definitions |
Analyze, Appinfo, All, Simple, CE, ChangedBehavior |
8 |
3 |
Major |
13 % |
| Don't Collect Void |
Analyze, All, ChangedBehavior |
63 |
48 |
Minor |
0 % |
| Empty Function |
Analyze, All, Simple, ChangedBehavior |
36 |
21 |
Minor |
74 % |
| Hardcoded Passwords |
Analyze, Security, OneFile, All, Simple, Level 3, ChangedBehavior |
1863 |
218 |
Major |
70 % |
| Insufficient Type |
Analyze, All, Typechecks, ChangedBehavior |
168 |
125 |
Major |
43 % |
| Method Is Not An If |
Analyze, All |
152 |
101 |
Minor |
0 % |
| Mismatch Parameter Name |
Analyze, All, CompatibilityPHP80, CE, ChangedBehavior |
10 |
10 |
Minor |
0 % |
| Mismatch Type And Default |
Analyze, All, LintButWontExec, Typechecks, ChangedBehavior |
1 |
1 |
Critical |
8 % |
| Mismatched Default Arguments |
Analyze, All, Typechecks, ChangedBehavior |
175 |
86 |
Minor |
80 % |
| Mismatched Type |
Analyze, All, Typechecks, ChangedBehavior |
175 |
111 |
Major |
66 % |
| Modified Typed Parameter |
Analyze, All, ClassReview, ChangedBehavior |
22 |
15 |
Minor |
0 % |
| Must Return Methods |
Analyze, All, Simple, Level 2, LintButWontExec, CI-checks, CE, ChangedBehavior |
1 |
1 |
Major |
34 % |
| Never Called Parameter |
Analyze, All, Suggestions, Rector, Unused |
203 |
115 |
Minor |
92 % |
| No Boolean As Default |
Analyze, All |
432 |
152 |
Minor |
84 % |
| No Default For Referenced Parameter |
Analyze, All, ChangedBehavior |
23 |
14 |
Minor |
0 % |
| No Return Used |
Analyze, All, Suggestions, Level 4, ChangedBehavior |
295 |
165 |
Minor |
69 % |
| Only Variable Passed By Reference |
Analyze, All, ChangedBehavior |
1 |
1 |
Critical |
43 % |
| Retyped Reference |
Analyze, All, Typehints, ChangedBehavior |
11 |
9 |
Major |
0 % |
| Too Many Local Variables |
Analyze, All |
287 |
154 |
Minor |
64 % |
| Class-typed References |
Analyze, All, CI-checks, CE |
5 |
4 |
Minor |
37 % |
| Undefined Functions |
stubs |
15 |
7 |
Major |
68 % |
| Unused Parameter |
Analyze, All, Simple, Unused |
241 |
144 |
Major |
90 % |
| Unused Functions |
Dead code, All, Simple, Unused, ChangedBehavior |
54 |
43 |
Minor |
52 % |
| Unused Inherited Variable In Closure |
Analyze, Dead code, All, CI-checks, CE, Unused, ChangedBehavior |
1 |
1 |
Major |
23 % |
| Unused Returned Value |
Analyze, Dead code, OneFile, All, Simple, Unused |
5455 |
722 |
Minor |
41 % |
| Use Constant As Arguments |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
2 |
2 |
Major |
30 % |
| Useless Argument |
Analyze, All, ChangedBehavior |
2 |
2 |
Minor |
0 % |
| Useless Referenced Argument |
Analyze, All, ChangedBehavior |
16 |
14 |
Minor |
58 % |
| Useless Type Check |
Dead code, OneFile, All, ChangedBehavior |
2 |
2 |
Minor |
0 % |
| Uses Default Values |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
31552 |
1190 |
Minor |
98 % |
| Using Deprecated Method |
Analyze, All, Attributes |
4 |
2 |
Minor |
0 % |
| Wrong Number Of Arguments |
Analyze, OneFile, All, Simple, CI-checks, CE, Stubs, ChangedBehavior |
533 |
225 |
Major |
81 % |
| Wrong Type Returned |
Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior |
2253 |
465 |
Minor |
0 % |
| Wrong Type With Call |
Analyze, All, Typechecks, CI-checks, CE, ChangedBehavior |
222 |
155 |
Minor |
0 % |
| Forgotten Interface |
Analyze, All, ChangedBehavior |
13 |
13 |
Minor |
48 % |
| Empty Interfaces |
Analyze, All, Simple, ChangedBehavior |
1 |
1 |
Minor |
41 % |
| Interfaces Is Not Implemented |
Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior |
32 |
32 |
Minor |
0 % |
| Interfaces Don't Ensure Properties |
Analyze, All, ClassReview, ChangedBehavior |
3 |
1 |
Minor |
0 % |
| Undefined Interfaces |
Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined |
222 |
68 |
Major |
72 % |
| Useless Interfaces |
Analyze, ClearPHP, All, Simple, ClassReview, Typechecks, ChangedBehavior |
7 |
7 |
Minor |
59 % |
| Hidden Use Expression |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
14 |
7 |
Minor |
23 % |
| Multiple Alias Definitions |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
61 |
50 |
Minor |
44 % |
| Should Make Alias |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
57 |
21 |
Minor |
46 % |
| Unresolved Use |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
328 |
109 |
Major |
69 % |
| Unused Use |
Dead code, ClearPHP, All, Simple, php-cs-fixable, Unused, ChangedBehavior |
20 |
14 |
Major |
60 % |
| No array_merge() In Loops |
Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
49 |
31 |
Major |
57 % |
| Logical To in_array() |
Analyze, All, Level 2, ChangedBehavior |
65 |
31 |
Minor |
67 % |
| Pre-increment |
Analyze, Performances, All, Simple, Level 4, CI-checks, CE, ChangedBehavior |
387 |
136 |
Minor |
74 % |
| strpos() Too Much |
Analyze, All, CI-checks, CE, ChangedBehavior |
7 |
5 |
Minor |
49 % |
| array_key_exists() Works On Arrays |
Analyze, All, CompatibilityPHP74, CE, ChangedBehavior |
83 |
41 |
Minor |
0 % |
| Assumptions |
Analyze, All, ChangedBehavior |
298 |
144 |
Minor |
0 % |
| Avoid mb_dectect_encoding() |
Analyze, All, ChangedBehavior |
2 |
2 |
Minor |
0 % |
| Use random_int() |
Analyze, Security, CompatibilityPHP71, All, Simple, Level 2, CI-checks, CE, ChangedBehavior |
368 |
141 |
Major |
59 % |
| Comparison On Different Types |
All, Dump, ChangedBehavior |
3 |
1 |
Minor |
0 % |
| Deprecated PHP Functions |
Analyze, All, CI-checks, CE |
3 |
1 |
Major |
23 % |
| Don't Pollute Global Space |
Analyze, All |
1204 |
643 |
Minor |
0 % |
| Exit Without Argument |
Analyze, All, ChangedBehavior |
52 |
26 |
Minor |
0 % |
| False To Array Conversion |
Analyze, All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior |
81 |
19 |
Minor |
0 % |
| Include Variables |
All, Dump |
1 |
1 |
Minor |
0 % |
| Wrong Parameter Type |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
18 |
13 |
Major |
76 % |
| Is_A() With String |
Analyze, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
3 |
3 |
Minor |
0 % |
| Use === null |
Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, CE, ChangedBehavior |
152 |
62 |
Minor |
53 % |
| List With Keys |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Appcontent, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior |
224 |
85 |
Major |
34 % |
| Logical Should Use Symbolic Operators |
Analyze, OneFile, ClearPHP, All, Simple, Suggestions, Level 2, Top10, php-cs-fixable, CI-checks, CE |
8 |
8 |
Minor |
43 % |
| Possible Missing Subpattern |
Analyze, All, Top10, CI-checks, CE, ChangedBehavior |
14 |
10 |
Minor |
45 % |
| PHP Native Class Type Compatibility |
Analyze, All, CompatibilityPHP81, ChangedBehavior |
13 |
3 |
Major |
0 % |
| No Class In Global |
Analyze, All, CI-checks, CE, ChangedBehavior |
701 |
628 |
Minor |
77 % |
| No Null For Native PHP Functions |
Analyze, All, CompatibilityPHP81, Deprecated, ChangedBehavior |
84 |
37 |
Minor |
0 % |
| Php7 Relaxed Keyword |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE |
10 |
8 |
Major |
28 % |
| Php 8.0 Only TypeHints |
Appinfo, CompatibilityPHP56, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior |
27 |
17 |
Minor |
0 % |
| Scalar Are Not Arrays |
Analyze, All, CompatibilityPHP74, CI-checks, CE, ChangedBehavior |
8 |
1 |
Minor |
0 % |
| Should Use Coalesce |
Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE, ChangedBehavior |
122 |
64 |
Major |
71 % |
| Too Many Native Calls |
Analyze, All, ChangedBehavior |
7 |
7 |
Minor |
49 % |
| Trailing Comma In Calls |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CE, ChangedBehavior |
5 |
4 |
Minor |
1 % |
| Typed Property Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CE, ChangedBehavior |
1649 |
509 |
Minor |
6 % |
| Unknown Pcre2 Option |
Analyze, All, CompatibilityPHP73, ChangedBehavior |
1 |
1 |
Minor |
17 % |
| Use Nullable Type |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior |
387 |
144 |
Major |
90 % |
| Use PHP Object API |
Analyze, ClearPHP, All, Simple, CI-checks, CE, ChangedBehavior |
5 |
2 |
Minor |
27 % |
| Avoid Using stdClass |
Analyze, OneFile, All, Simple, Level 4 |
32 |
11 |
Minor |
46 % |
| Wrong Type For Native PHP Function |
Analyze, All, CI-checks, CE, ChangedBehavior |
203 |
89 |
Minor |
0 % |
| Always Anchor Regex |
Security, All, ChangedBehavior |
77 |
40 |
Major |
65 % |
| Avoid Those Hash Functions |
Security, All, ChangedBehavior |
43 |
28 |
Major |
62 % |
| Compare Hash |
Security, ClearPHP, All, ChangedBehavior |
3 |
2 |
Major |
16 % |
| Safe Curl Options |
Security, All, ChangedBehavior |
2 |
1 |
Major |
15 % |
| Direct Injection |
Security, All, ChangedBehavior |
211 |
89 |
Major |
51 % |
| Don't Echo Error |
Analyze, Security, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
2 |
2 |
Critical |
35 % |
| filter_input() As A Source |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
7 % |
| Incompatible Types With Incoming Values |
Security, All, ChangedBehavior |
47 |
24 |
Minor |
0 % |
| Indirect Injection |
Security, All, ChangedBehavior |
504 |
144 |
Critical |
42 % |
| Insecure Integer Validation |
Security, All, ChangedBehavior |
116 |
60 |
Major |
0 % |
| Keep Files Access Restricted |
Security, All, ChangedBehavior |
3 |
3 |
Minor |
0 % |
| Mkdir Default |
Security, All, ChangedBehavior |
6 |
4 |
Major |
37 % |
| No Net For Xml Load |
Security, All, ChangedBehavior |
3 |
3 |
Major |
51 % |
| No Weak SSL Crypto |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Safe HTTP Headers |
Security, All, ChangedBehavior |
1 |
1 |
Major |
5 % |
| Unvalidated Data Cached In Session |
Security, All, ChangedBehavior |
10 |
6 |
Minor |
0 % |
| Should Use Prepared Statement |
Analyze, Security, All, Simple, CI-checks, CE, ChangedBehavior |
17 |
9 |
Major |
28 % |
| Adding Zero |
Dump |
11 |
6 |
Minor |
69 % |
| Altering Foreach Without Reference |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE |
22 |
14 |
Major |
56 % |
| Comparison Is Always The Same |
Analyze, All, ChangedBehavior |
124 |
61 |
Minor |
0 % |
| Array With String Ellipsis |
All, CompatibilityPHP74, CompatibilityPHP80, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior, CompatibilityPHP83, CompatibilityPHP84, CompatibilityPHP85 |
1 |
1 |
Minor |
0 % |
| Bail Out Early |
Analyze, OneFile, All, Simple, Level 4, ChangedBehavior |
871 |
286 |
Minor |
64 % |
| Strict Comparison With Booleans |
Analyze, All, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior |
767 |
190 |
Minor |
77 % |
| Buried Assignation |
Analyze, All, ChangedBehavior |
305 |
142 |
Minor |
84 % |
| Cast To Boolean |
Analyze, OneFile, All, Simple, Level 1, ChangedBehavior |
69 |
33 |
Minor |
56 % |
| Casting Ternary |
Analyze, OneFile, All, CI-checks, CE, ChangedBehavior |
1 |
1 |
Major |
0 % |
| Catch Overwrite Variable |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
1 |
1 |
Minor |
25 % |
| Check All Types |
Analyze, All, ChangedBehavior |
108 |
46 |
Major |
69 % |
| Check Division By Zero |
Analyze, All, ChangedBehavior |
46 |
24 |
Minor |
0 % |
| Check JSON |
Analyze, All, CI-checks, CE |
179 |
82 |
Major |
65 % |
| Coalesce And Concat |
Analyze, All, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Common Alternatives |
Analyze, All, Simple, ChangedBehavior |
84 |
59 |
Major |
80 % |
| Concat Empty String |
Analyze, OneFile, All |
42 |
27 |
Minor |
0 % |
| Could Be Else |
Analyze, All, ChangedBehavior |
26 |
21 |
Minor |
49 % |
| Could Be A Static Variable |
Analyze, OneFile, All, ClassReview, ChangedBehavior |
1 |
1 |
Major |
23 % |
| Could Use Short Assignation |
Analyze, Performances, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
41 |
24 |
Minor |
63 % |
| Count() Is Not Negative |
Analyze, All, ChangedBehavior |
4 |
3 |
Minor |
0 % |
| Dangling Array References |
Analyze, PHP recommendations, ClearPHP, All, Simple, Level 1, Top10, CI-checks, CE, ChangedBehavior |
59 |
48 |
Major |
46 % |
| Default Then Discard |
Analyze, All, ChangedBehavior, Readability |
1 |
1 |
Minor |
0 % |
| Don't Change The Blind Var |
Analyze, All, ChangedBehavior |
90 |
49 |
Minor |
73 % |
| Don't Mix ++ |
Analyze, All, ChangedBehavior |
31 |
19 |
Minor |
56 % |
| Don't Read And Write In One Expression |
Analyze, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior |
1 |
1 |
Critical |
38 % |
| Don't Reuse Foreach Source |
Analyze, All, ChangedBehavior |
89 |
57 |
Minor |
0 % |
| Double Assignation |
Analyze, All, ChangedBehavior |
63 |
34 |
Major |
59 % |
| Double Checks |
Analyze, All, ChangedBehavior |
34 |
19 |
Minor |
0 % |
| Double Instructions |
Analyze, All, Simple, ChangedBehavior |
143 |
34 |
Minor |
57 % |
| Drop Else After Return |
Analyze, OneFile, All, Simple, Suggestions, Level 4, CI-checks, CE, ChangedBehavior |
139 |
76 |
Minor |
70 % |
| Echo With Concat |
Analyze, Performances, All, Simple, Suggestions, ChangedBehavior |
4136 |
273 |
Minor |
60 % |
| Else If Versus Elseif |
Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE |
1213 |
354 |
Minor |
66 % |
| Empty Json Error |
Analyze, All, ChangedBehavior |
5 |
5 |
Minor |
0 % |
| Empty Instructions |
Analyze, Dead code, All, Simple, ChangedBehavior |
16 |
15 |
Minor |
57 % |
| error_reporting() With Integers |
Analyze, All, Simple, CI-checks, CE |
2 |
2 |
Minor |
2 % |
| Exit() Usage |
Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, CE, ChangedBehavior |
160 |
77 |
Major |
61 % |
| Switch Fallthrough |
Inventory, Security, All, Stats, ChangedBehavior |
10 |
6 |
Minor |
39 % |
| foreach() On Object |
Analyze, All |
266 |
113 |
Minor |
0 % |
| Foreach Reference Is Not Modified |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
3 |
3 |
Minor |
24 % |
| Global Usage |
Analyze, Appinfo, ClearPHP, All, CE, ChangedBehavior |
1804 |
391 |
Minor |
52 % |
| Htmlentities Calls |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
6 |
3 |
Major |
40 % |
| Htmlentities Using Default Flag |
Analyze, All, Simple, CI-checks, ChangedBehavior |
7 |
5 |
Minor |
0 % |
| Identical Case In Switch |
Analyze, All, ChangedBehavior |
168 |
34 |
Minor |
0 % |
| Identical Consecutive Expression |
Analyze, All, ChangedBehavior |
57 |
30 |
Minor |
59 % |
| If With Same Conditions |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
31 |
22 |
Major |
47 % |
| Iffectations |
Analyze, All, ChangedBehavior |
700 |
260 |
Minor |
80 % |
| Implied If |
Analyze, ClearPHP, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
3 |
3 |
Major |
33 % |
| Implode() Arguments Order |
Analyze, All, CI-checks, CE, ChangedBehavior |
13 |
6 |
Minor |
0 % |
| Indices Are Int Or String |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
1785 |
183 |
Major |
20 % |
| Infinite Recursion |
Analyze, All, ChangedBehavior |
5 |
5 |
Major |
0 % |
| Invalid Regex |
Analyze, All, CI-checks, CE, ChangedBehavior |
3 |
2 |
Major |
37 % |
| list() May Omit Variables |
Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE |
4 |
3 |
Minor |
37 % |
| Long Arguments |
Analyze, All, ChangedBehavior |
109 |
62 |
Minor |
68 % |
| Max Level Of Nesting |
Analyze, All, ChangedBehavior |
263 |
139 |
Minor |
0 % |
| Merge If Then |
Analyze, All, CI-checks, CE, ChangedBehavior |
694 |
212 |
Minor |
0 % |
| Could Merge Ternary Into Ifthen |
Analyze, All, ChangedBehavior |
15 |
11 |
Minor |
0 % |
| Mismatched Ternary Alternatives |
Analyze, All, Suggestions, Level 4, ChangedBehavior |
8 |
6 |
Major |
64 % |
| Missing Assignation In Branches |
Analyze, All, ChangedBehavior |
1336 |
388 |
Minor |
0 % |
| Missing Cases In Switch |
Analyze, All, ChangedBehavior |
40 |
24 |
Minor |
36 % |
| Mixed Concat And Interpolation |
Analyze, Coding Conventions, All |
316 |
85 |
Minor |
45 % |
| Modernize Empty With Expression |
Analyze, OneFile, All, Simple, ChangedBehavior |
405 |
122 |
Minor |
63 % |
| Multiples Identical Case |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, Rector, CI-checks, CE, ChangedBehavior |
10 |
8 |
Minor |
29 % |
| Multiple Type Variable |
Analyze, All, Level 4, ChangedBehavior |
24 |
17 |
Minor |
58 % |
| Multiply By One |
Dump, Dum p |
1 |
1 |
Minor |
44 % |
| Nested Ifthen |
Analyze, All, RadwellCodes, ChangedBehavior |
2056 |
416 |
Major |
84 % |
| Nested Ternary |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
22 |
15 |
Major |
50 % |
| Next Month Trap |
Analyze, All, Top10, CI-checks, CE, ChangedBehavior |
10 |
2 |
Major |
8 % |
| Don't Change Incomings |
Analyze, All, ChangedBehavior |
469 |
198 |
Minor |
44 % |
| No Choice |
Analyze, All, Simple, Level 2, Top10, Rector, CI-checks, CE, ChangedBehavior |
97 |
52 |
Major |
42 % |
| No Direct Usage Of Returned Value |
Analyze, All, Simple, ChangedBehavior |
6 |
3 |
Major |
39 % |
| No Hardcoded Hash |
Analyze, Security, All, Simple, ChangedBehavior |
14 |
8 |
Critical |
45 % |
| No Hardcoded Ip |
Analyze, Security, ClearPHP, All, Simple, ChangedBehavior |
1 |
1 |
Minor |
25 % |
| No Hardcoded Path |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
2 |
2 |
Major |
35 % |
| No isset() With empty() |
Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE, ChangedBehavior |
193 |
75 |
Minor |
30 % |
| No Need For Else |
Analyze, All, ChangedBehavior |
141 |
80 |
Minor |
74 % |
| No Need For Triple Equal |
Analyze, All, ChangedBehavior |
4 |
2 |
Minor |
0 % |
| No Null For Index |
Analyze, All, ChangedBehavior |
26 |
19 |
Minor |
0 % |
| No Parenthesis For Language Construct |
Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior |
1215 |
802 |
Minor |
62 % |
| Avoid Substr() One |
Analyze, Performances, CompatibilityPHP71, All, Simple, Suggestions, Level 2, Top10, CI-checks, CE, ChangedBehavior |
13 |
6 |
Minor |
58 % |
| Variable Is Not A Condition |
Analyze, All, ChangedBehavior |
2136 |
366 |
Minor |
93 % |
| Non Integer Nor String As Index |
Analyze, All, ChangedBehavior |
15 |
7 |
Minor |
0 % |
| @ Operator |
Analyze, Appinfo, Performances, ClearPHP, All, CI-checks, CE, ChangedBehavior |
59 |
20 |
Minor |
65 % |
| Not Equal Is Not !== |
Analyze, All, CI-checks, CE, ChangedBehavior |
6 |
4 |
Minor |
0 % |
| Objects Don't Need References |
Analyze, OneFile, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
282 |
31 |
Minor |
40 % |
| include_once() Usage |
Analyze, Appinfo, All, CE, ChangedBehavior |
52 |
25 |
Minor |
73 % |
| Several Instructions On The Same Line |
Analyze, All, ChangedBehavior |
5 |
3 |
Major |
56 % |
| Or Die |
Analyze, OneFile, ClearPHP, All, Simple, CI-checks, CE |
3 |
3 |
Minor |
13 % |
| Overwritten Foreach Var |
Analyze, OneFile, All, ChangedBehavior |
3 |
3 |
Major |
0 % |
| PHP7 Dirname |
CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, Suggestions, php-cs-fixable, ChangedBehavior |
4 |
4 |
Minor |
44 % |
| Print And Die |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
33 |
19 |
Minor |
32 % |
| Printf Number Of Arguments |
Analyze, All, CI-checks, CE |
3 |
3 |
Minor |
41 % |
| Queries In Loops |
Analyze, OneFile, All, Simple, Level 1, Top10, ChangedBehavior |
1 |
1 |
Major |
8 % |
| Random Without Try |
Security, All, ChangedBehavior |
12 |
4 |
Critical |
30 % |
| Repeated print() |
Analyze, All, Simple, Suggestions, Level 3, Top10, CI-checks, CE, ChangedBehavior |
2148 |
252 |
Major |
50 % |
| Repeated Regex |
Analyze, All, Level 1, CI-checks, CE, ChangedBehavior |
117 |
41 |
Minor |
47 % |
| Return True False |
Analyze, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
21 |
19 |
Major |
46 % |
| Same Conditions In Condition |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
33 |
25 |
Critical |
55 % |
| Should Chain Exception |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
39 % |
| Should Use Ternary Operator |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
605 |
197 |
Minor |
86 % |
| Preprocessable |
Analyze, All, Rector, ChangedBehavior |
1981 |
538 |
Minor |
85 % |
| Sprintf Format Compilation |
Analyze, All, ChangedBehavior |
3 |
2 |
Minor |
0 % |
| Static Inclusions |
Analyze, All, ChangedBehavior |
1072 |
751 |
Minor |
0 % |
| Static Loop |
Analyze, All, Simple, Level 4, ChangedBehavior |
20 |
16 |
Minor |
67 % |
| Strpos()-like Comparison |
Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
46 |
45 |
Major |
54 % |
| Suspicious Comparison |
Analyze, All, Level 3, ChangedBehavior |
12 |
10 |
Major |
39 % |
| Switch To Switch |
Analyze, All, RadwellCodes, Simple, ChangedBehavior |
75 |
17 |
Minor |
58 % |
| Switch Without Default |
Analyze, ClearPHP, All, Simple, CI-checks, CE, ChangedBehavior |
594 |
239 |
Major |
69 % |
| Ternary In Concat |
Analyze, All, Simple, Level 3, CI-checks, CE, ChangedBehavior |
2 |
2 |
Critical |
8 % |
| Test Then Cast |
Analyze, All, ChangedBehavior |
2 |
2 |
Major |
34 % |
| Timestamp Difference |
Analyze, All, Simple, Level 3, CI-checks, CE, ChangedBehavior |
33 |
20 |
Major |
49 % |
| Unchecked Resources |
Analyze, ClearPHP, All, Simple, Level 2, CI-checks, CE, ChangedBehavior |
4 |
3 |
Major |
50 % |
| Unconditional Break In Loop |
Analyze, All, Level 3, CI-checks, CE |
8 |
8 |
Major |
48 % |
| Unkown Regex Options |
Analyze, All, Simple, CE, ChangedBehavior |
2 |
1 |
Major |
0 % |
| Unpreprocessed Values |
Analyze, Performances, OneFile, ClearPHP, All, Simple, ChangedBehavior |
1 |
1 |
Minor |
30 % |
| Unreachable Code |
Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3, Unused, ChangedBehavior |
170 |
71 |
Major |
61 % |
| Unused Global |
Analyze, All, Simple, Unused, ChangedBehavior |
43 |
1 |
Minor |
22 % |
| Use Constant Instead Of Function |
Analyze, PHP recommendations, All, php-cs-fixable, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
61 % |
| Avoid get_class() |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
7 |
4 |
Minor |
32 % |
| Use Positive Condition |
Analyze, OneFile, All, Simple, ChangedBehavior |
328 |
159 |
Minor |
82 % |
| Use Same Types For Comparisons |
Analyze, All |
14 |
7 |
Minor |
0 % |
| Use Variable Created Inside Loop |
Dead code, All, ChangedBehavior |
215 |
98 |
Minor |
0 % |
| Useless Type Casting |
Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE, ChangedBehavior |
33 |
20 |
Minor |
47 % |
| Useless Check Before Foreach |
Analyze, OneFile, All, Simple, Level 1, CI-checks, CE |
263 |
102 |
Minor |
35 % |
| Useless Coalesce |
Analyze, All, ChangedBehavior |
7 |
6 |
Minor |
0 % |
| Useless Global |
Analyze, OneFile, All, Simple, Level 2, ChangedBehavior |
3 |
2 |
Minor |
27 % |
| Useless Instructions |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
150 |
80 |
Minor |
63 % |
| Useless Null Coalesce |
Analyze, All, Typehints, ChangedBehavior |
70 |
34 |
Minor |
0 % |
| Useless Parenthesis |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
536 |
178 |
Minor |
81 % |
| Useless Short Ternary |
Analyze, All, ChangedBehavior |
2 |
2 |
Minor |
0 % |
| Useless Switch |
Analyze, All, Simple, ChangedBehavior |
234 |
134 |
Major |
32 % |
| Useless Unset |
Analyze, OneFile, ClearPHP, All, Simple, Level 2, CI-checks, CE, ChangedBehavior |
11 |
7 |
Major |
42 % |
| var_dump()... Usage |
Analyze, Security, ClearPHP, All, CI-checks, CE, ChangedBehavior |
2 |
2 |
Critical |
42 % |
| Wrong Precedence In Expression |
Analyze, All, ChangedBehavior |
2 |
2 |
Minor |
0 % |
| Already Parents Trait |
Analyze, All |
12 |
12 |
Minor |
0 % |
| Cannot Call Static Trait Method Directly |
Analyze, All, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior |
1 |
1 |
Minor |
0 % |
| Dependant Trait |
Analyze, All, Level 3, ChangedBehavior |
8 |
8 |
Minor |
28 % |
| Trait Is Not A Type |
Analyze, All, ClassReview, Typehints |
1 |
1 |
Minor |
0 % |
| Trait Not Found |
Analyze, All, LintButWontExec, ChangedBehavior |
4 |
4 |
Minor |
0 % |
| No Real Comparison |
Analyze, PHP recommendations, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
1 |
1 |
Major |
26 % |
| One Variable String |
Analyze, All, RadwellCodes, Simple, CI-checks, CE, ChangedBehavior |
57 |
37 |
Minor |
33 % |
| Should Typecast |
Analyze, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
102 |
52 |
Minor |
49 % |
| String May Hold A Variable |
Analyze, All, Simple, ChangedBehavior |
16 |
9 |
Minor |
59 % |
| Missing Some Returntype |
Analyze, All, Typehints, CI-checks, CE, ChangedBehavior |
23 |
19 |
Minor |
0 % |
| StandaloneType True False Null |
Analyze, Appcontent, All, ChangedBehavior |
158 |
63 |
Minor |
0 % |
| Wrong Type With Default |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
232 |
90 |
Minor |
0 % |
| Assigned Twice |
Analyze, All, ChangedBehavior |
2089 |
215 |
Minor |
79 % |
| Overwritten Literals |
Analyze, All, ChangedBehavior |
2606 |
220 |
Major |
79 % |
| Recycled Variables |
Analyze, All |
120 |
15 |
Minor |
0 % |
| Undefined Variable |
Analyze, All, CI-checks, CE, Undefined |
10796 |
566 |
Minor |
77 % |
| Used Once Variables |
Analyze, OneFile, All, Simple, Top10, ChangedBehavior |
91 |
33 |
Minor |
74 % |
| Used Once Variables (In Scope) |
Analyze, OneFile, ClearPHP, All, Simple, Level 4, CE, ChangedBehavior |
3233 |
837 |
Minor |
95 % |
| Written Only Variables |
Analyze, OneFile, All, Simple, Unused, ChangedBehavior |
315 |
100 |
Minor |
87 % |