Ambiguous Array Index |
Analyze, All, Simple, Level 2, Semantics, ChangedBehavior |
44 |
5 |
Minor |
10 % |
Append And Assign Arrays |
Analyze, Internal, All, ChangedBehavior |
18 |
14 |
Minor |
0 % |
Null Or Boolean Arrays |
Analyze, All |
167 |
41 |
Minor |
0 % |
Randomly Sorted Arrays |
Analyze, All, Suggestions, Level 4 |
32 |
25 |
Minor |
41 % |
Too Many Array Dimensions |
Analyze, All |
53 |
14 |
Minor |
0 % |
Weak Type With Array |
Analyze, All, ChangedBehavior |
1947 |
299 |
Minor |
0 % |
Abstract Or Implements |
Analyze, All, LintButWontExec, ChangedBehavior |
1158 |
1158 |
Major |
24 % |
Accessing Private |
Analyze, All, Simple, ChangedBehavior |
11 |
9 |
Major |
17 % |
Ambiguous Static |
Analyze, All, Semantics, ChangedBehavior |
557 |
420 |
Minor |
66 % |
Ambiguous Visibilities |
Analyze, All, Semantics, ChangedBehavior |
2552 |
1245 |
Minor |
70 % |
Avoid Optional Properties |
Analyze, All, ChangedBehavior |
358 |
97 |
Major |
84 % |
Cant Instantiate Non Class |
Analyze, All, ClassReview |
2 |
2 |
Minor |
0 % |
Check After Null Safe Operator |
Analyze, All, Suggestions, ChangedBehavior |
37 |
32 |
Major |
0 % |
Class, Interface, Enum Or Trait With Identical Names |
Analyze, All, ChangedBehavior |
278 |
278 |
Minor |
19 % |
Const Visibility Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, ChangedBehavior |
1201 |
388 |
Minor |
24 % |
Could Be Abstract Class |
Analyze, All, ClassReview, ChangedBehavior |
63 |
63 |
Minor |
65 % |
Class Could Be Final |
Analyze, All, ClassReview, ChangedBehavior |
2219 |
2190 |
Minor |
96 % |
Method Could Be Static |
Analyze, All, ClassReview, ChangedBehavior |
803 |
516 |
Minor |
92 % |
Could Inject Parameter |
Analyze, All, ClassReview, ChangedBehavior |
196 |
119 |
Minor |
0 % |
Cyclic References |
Analyze, All, ClassReview, ChangedBehavior |
46 |
17 |
Minor |
0 % |
Dependant Abstract Classes |
Analyze, All, ClassReview, ChangedBehavior |
3 |
3 |
Minor |
0 % |
No Direct Call To Magic Method |
Analyze, All, Level 2, CI-checks, CE |
10 |
3 |
Major |
43 % |
Don't Send $this In Constructor |
Analyze, All, ChangedBehavior |
11 |
11 |
Minor |
41 % |
Don't Unset Properties |
Analyze, All, Top10, php-cs-fixable, CI-checks, CE, ChangedBehavior |
96 |
34 |
Major |
42 % |
Empty Classes |
Analyze, All, Simple, ChangedBehavior |
58 |
58 |
Minor |
60 % |
Final Private Methods |
OneFile, All, ClassReview, CompatibilityPHP80, CE |
1 |
1 |
Minor |
0 % |
Implicit Nullable Type |
Analyze, All, ClassReview, ChangedBehavior |
20 |
17 |
Minor |
0 % |
Incompatible Signature Methods With Covariance |
Analyze, All, ChangedBehavior |
6 |
6 |
Critical |
0 % |
Inherited Property Type Must Match |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
13 |
12 |
Minor |
0 % |
Instantiating Abstract Class |
Analyze, All, Simple |
1 |
1 |
Major |
13 % |
Locally Unused Property |
Dead code, All, Simple, Unused, ChangedBehavior |
278 |
118 |
Minor |
76 % |
Assign Default To Properties |
Analyze, ClearPHP, All, Simple, Level 2, ChangedBehavior |
28 |
10 |
Minor |
71 % |
Make Global A Property |
Analyze, All, Simple, ChangedBehavior |
7 |
4 |
Minor |
37 % |
Method Signature Must Be Compatible |
Analyze, All, LintButWontExec, ChangedBehavior |
6 |
4 |
Critical |
53 % |
Mismatch Properties Types |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
84 |
47 |
Minor |
0 % |
Multiple Class Declarations |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
35 |
35 |
Major |
29 % |
New Object Then Immediate Call |
Analyze, All, ClassReview |
81 |
58 |
Minor |
0 % |
No Null With Null Safe Operator |
Analyze, All, ClassReview, ChangedBehavior |
33 |
24 |
Minor |
0 % |
No Public Access |
Analyze, All, ChangedBehavior |
161 |
67 |
Minor |
61 % |
No Readonly Assignation In Global |
Analyze, All, ClassReview, ChangedBehavior |
55 |
24 |
Minor |
0 % |
Non Nullable Getters |
Analyze, All, ClassReview, ChangedBehavior |
64 |
45 |
Minor |
0 % |
Forgotten Visibility |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE |
329 |
15 |
Minor |
42 % |
Parent First |
Analyze, All, Suggestions, ChangedBehavior |
5 |
5 |
Minor |
56 % |
Property Could Be Local |
Analyze, All, ClassReview, ChangedBehavior |
1751 |
612 |
Minor |
76 % |
Same Name For Property And Method |
Analyze, All, ClassReview, Semantics, ChangedBehavior |
142 |
53 |
Minor |
0 % |
Never Used Properties |
Analyze, All, Simple, Unused, ChangedBehavior |
115 |
51 |
Minor |
71 % |
Property Used In One Method Only |
Analyze, All, ChangedBehavior |
2599 |
1062 |
Minor |
84 % |
Parent, Static Or Self Outside Class |
Analyze, All, Simple, ChangedBehavior |
87 |
1 |
Major |
21 % |
Scalar Or Object Property |
Analyze, All |
2 |
2 |
Minor |
32 % |
Could Use self |
Analyze, All, Simple, Suggestions, Level 3, ClassReview, ChangedBehavior |
52 |
17 |
Minor |
63 % |
Should Use Local Class |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
931 |
550 |
Minor |
95 % |
Static Methods Called From Object |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
10 |
6 |
Minor |
50 % |
Too Many Dereferencing |
Analyze, All, ChangedBehavior |
50 |
41 |
Minor |
0 % |
Too Many Injections |
Analyze, All, Dismell, ChangedBehavior |
15 |
15 |
Minor |
19 % |
Wrong Access Style to Property |
Analyze, All, Level 2, ClassReview, CI-checks, CE |
128 |
15 |
Critical |
37 % |
Undefined Classes |
Analyze, All, Stubs, Undefined |
512 |
164 |
Major |
91 % |
Undefined Class Constants |
Analyze, All, LintButWontExec, CI-checks, CE, Stubs, ChangedBehavior, Undefined |
76 |
24 |
Major |
62 % |
Undefined Properties |
Analyze, ClearPHP, All, Simple, CI-checks, CE, CompatibilityPHP82, ChangedBehavior, Undefined |
2303 |
196 |
Major |
61 % |
Undefined static:: Or self:: |
Analyze, All, Simple, ChangedBehavior, Undefined |
1 |
1 |
Minor |
35 % |
Unfinished Object |
Analyze, All, ClassReview, ChangedBehavior |
3261 |
1179 |
Major |
0 % |
Unreachable Method |
Analyze, Dead code, All, ClassReview, Unused, ChangedBehavior |
10 |
7 |
Minor |
0 % |
Unresolved Catch |
Dead code, ClearPHP, All, ChangedBehavior |
17 |
12 |
Major |
52 % |
Unresolved Classes |
Analyze, All, Stubs, ChangedBehavior |
139 |
61 |
Major |
76 % |
Unresolved Instanceof |
Analyze, Dead code, ClearPHP, All, Simple, Top10, ChangedBehavior |
12 |
10 |
Major |
48 % |
Unused Classes |
Analyze, Dead code, All, Simple, Unused, ChangedBehavior |
225 |
225 |
Major |
67 % |
Unused Class Constant |
Analyze, All, ClassReview, Unused, ChangedBehavior |
85 |
39 |
Minor |
0 % |
Unused Methods |
Dead code, All, Simple, Unused, ChangedBehavior |
4203 |
1907 |
Minor |
96 % |
Unused Private Methods |
Dead code, OneFile, All, Simple, Unused, ChangedBehavior |
31 |
15 |
Minor |
50 % |
Unused Private Properties |
Dead code, OneFile, All, Simple, Unused |
14 |
10 |
Minor |
51 % |
Unused Protected Methods |
Dead code, All, Unused, ChangedBehavior |
168 |
91 |
Major |
68 % |
Unused Public Methods |
Analyze, All, ChangedBehavior |
3366 |
1701 |
Minor |
0 % |
Use ::Class Operator |
Analyze, Performances, All, Simple, CI-checks, CE, ChangedBehavior |
82 |
40 |
Minor |
71 % |
Use Instanceof |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
108 |
54 |
Major |
63 % |
Used Once Property |
Analyze, All, ChangedBehavior |
1641 |
868 |
Minor |
74 % |
Useless Abstract Class |
Analyze, All, Simple, ChangedBehavior |
9 |
9 |
Minor |
33 % |
Useless Constructor |
Analyze, All, Simple, Level 3, ChangedBehavior |
42 |
42 |
Minor |
41 % |
Useless Method |
Analyze, All, ChangedBehavior |
3 |
2 |
Minor |
0 % |
Weak Typing |
Analyze, All, ChangedBehavior |
118 |
54 |
Minor |
47 % |
Wrong Typed Property Default |
Analyze, All, LintButWontExec, ClassReview, CI-checks, CE |
83 |
61 |
Minor |
0 % |
Use const |
Analyze, Coding Conventions, All, Top10, CI-checks, CE |
6 |
1 |
Minor |
54 % |
Constant Used Only Once |
Analyze, All, ChangedBehavior |
577 |
245 |
Minor |
0 % |
Multiple Constant Definition |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
41 % |
Undefined Constants |
stubs |
1 |
1 |
Minor |
71 % |
Could Be A Constant |
All, Dump, ChangedBehavior |
221 |
87 |
Minor |
0 % |
Undefined Caught Exceptions |
Dead code, All, ChangedBehavior |
33 |
22 |
None |
53 % |
Caught Exceptions |
All, Dump, ChangedBehavior |
393 |
219 |
None |
100 % |
Converted Exceptions |
Analyze, All, ChangedBehavior |
139 |
91 |
Minor |
0 % |
Could Drop Variable |
Dead code, All, Suggestions, ChangedBehavior |
30 |
23 |
Minor |
0 % |
Multiple Exceptions Catch() |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior |
31 |
23 |
Major |
10 % |
Throw Raw Exceptions |
Analyze, All, Suggestions, ChangedBehavior |
1012 |
397 |
Minor |
0 % |
Uncaught Exceptions |
Analyze, All, ChangedBehavior |
1064 |
406 |
Minor |
84 % |
Unthrown Exception |
Analyze, Dead code, ClearPHP, All, Simple, ChangedBehavior |
7 |
7 |
Minor |
45 % |
Useless Try |
Analyze, All, ChangedBehavior |
129 |
93 |
Minor |
0 % |
Missing Include |
Analyze, All, ChangedBehavior |
53 |
30 |
Critical |
65 % |
Native Alias Functions Usage |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
20 |
8 |
Minor |
20 % |
Use Named Boolean In Argument Definition |
Analyze, All, ChangedBehavior |
375 |
188 |
Minor |
84 % |
Can't Call Generator |
Analyze, All |
2 |
2 |
Minor |
0 % |
Could Make A Function |
Analyze, All, Suggestions, ChangedBehavior |
907 |
223 |
Minor |
66 % |
Don't Collect Void |
Analyze, All, ChangedBehavior |
501 |
193 |
Minor |
0 % |
Empty Function |
Analyze, All, Simple, ChangedBehavior |
201 |
138 |
Minor |
74 % |
Fn Argument Variable Confusion |
Analyze, All, Semantics, ChangedBehavior |
15 |
13 |
Minor |
0 % |
Hardcoded Passwords |
Analyze, Security, OneFile, All, Simple, Level 3, ChangedBehavior |
41 |
23 |
Major |
70 % |
Insufficient Type |
Analyze, All, Typechecks, ChangedBehavior |
186 |
139 |
Major |
43 % |
Method Is Not An If |
Analyze, All |
111 |
61 |
Minor |
0 % |
Mismatch Parameter Name |
Analyze, All, CompatibilityPHP80, CE, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Mismatch Type And Default |
Analyze, All, LintButWontExec, Typechecks, ChangedBehavior |
2 |
2 |
Critical |
8 % |
Mismatched Default Arguments |
Analyze, All, Typechecks, ChangedBehavior |
80 |
37 |
Minor |
80 % |
Mismatched Type |
Analyze, All, Typechecks, ChangedBehavior |
667 |
275 |
Major |
66 % |
Modified Typed Parameter |
Analyze, All, ClassReview, ChangedBehavior |
131 |
95 |
Minor |
0 % |
Must Return Methods |
Analyze, All, Simple, Level 2, LintButWontExec, CI-checks, CE, ChangedBehavior |
27 |
13 |
Major |
34 % |
Never Called Parameter |
Analyze, All, Suggestions, Rector, Unused |
114 |
75 |
Minor |
92 % |
No Boolean As Default |
Analyze, All |
259 |
138 |
Minor |
84 % |
No Default For Referenced Parameter |
Analyze, All, ChangedBehavior |
14 |
9 |
Minor |
0 % |
No Return Used |
Analyze, All, Suggestions, Level 4, ChangedBehavior |
155 |
60 |
Minor |
69 % |
Only Variable Passed By Reference |
Analyze, All, ChangedBehavior |
1 |
1 |
Critical |
43 % |
Retyped Reference |
Analyze, All, Typehints, ChangedBehavior |
1 |
1 |
Major |
0 % |
Should Use Existing Constants |
Analyze, All, Simple, ChangedBehavior |
13 |
3 |
Minor |
32 % |
Too Many Local Variables |
Analyze, All |
91 |
73 |
Minor |
64 % |
Class-typed References |
Analyze, All, CI-checks, CE |
2 |
2 |
Minor |
37 % |
Undefined Functions |
stubs |
4 |
1 |
Major |
68 % |
Unused Parameter |
Analyze, All, Simple, Unused |
466 |
259 |
Major |
90 % |
Unused Functions |
Dead code, All, Simple, Unused, ChangedBehavior |
53 |
44 |
Minor |
52 % |
Unused Returned Value |
Analyze, Dead code, OneFile, All, Simple, Unused |
1284 |
423 |
Minor |
41 % |
Useless Argument |
Analyze, All, ChangedBehavior |
3 |
2 |
Minor |
0 % |
Useless Referenced Argument |
Analyze, All, ChangedBehavior |
20 |
12 |
Minor |
58 % |
Useless Type Check |
Dead code, OneFile, All, ChangedBehavior |
15 |
14 |
Minor |
0 % |
Uses Default Values |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
7224 |
1315 |
Minor |
98 % |
Using Deprecated Method |
Analyze, All, Attributes |
143 |
52 |
Minor |
0 % |
Wrong Argument Type |
Analyze, All, Typechecks, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Wrong Number Of Arguments |
Analyze, OneFile, All, Simple, CI-checks, CE, Stubs, ChangedBehavior |
106 |
72 |
Major |
81 % |
Wrong Type Returned |
Analyze, All, LintButWontExec, ClassReview, CI-checks, CE, ChangedBehavior |
2765 |
696 |
Minor |
0 % |
Wrong Type With Call |
Analyze, All, Typechecks, CI-checks, CE, ChangedBehavior |
1231 |
455 |
Minor |
0 % |
Already Parents Interface |
Analyze, All, Suggestions, Level 3, ChangedBehavior |
31 |
31 |
Minor |
26 % |
Can't Implement Traversable |
Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior |
3 |
3 |
Minor |
0 % |
Forgotten Interface |
Analyze, All, ChangedBehavior |
764 |
762 |
Minor |
48 % |
Empty Interfaces |
Analyze, All, Simple, ChangedBehavior |
11 |
11 |
Minor |
41 % |
Repeated Interface |
Analyze, All, LintButWontExec, ChangedBehavior |
33 |
33 |
Minor |
0 % |
Undefined Interfaces |
Analyze, All, LintButWontExec, CI-checks, CE, ChangedBehavior, Undefined |
181 |
56 |
Major |
72 % |
Unused Interfaces |
Dead code, All, Simple, Suggestions, Level 2, Unused, ChangedBehavior |
15 |
15 |
Minor |
26 % |
Useless Interfaces |
Analyze, ClearPHP, All, Simple, ClassReview, Typechecks, ChangedBehavior |
70 |
70 |
Minor |
59 % |
Hidden Use Expression |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
30 |
9 |
Minor |
23 % |
Multiple Alias Definitions Per File |
Analyze, All, CI-checks, CE, ChangedBehavior |
26 |
12 |
Minor |
7 % |
Multiple Alias Definitions |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
5022 |
1849 |
Minor |
44 % |
Should Make Alias |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
290 |
159 |
Minor |
46 % |
Unresolved Use |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
263 |
117 |
Major |
69 % |
Unused Use |
Dead code, ClearPHP, All, Simple, php-cs-fixable, Unused, ChangedBehavior |
674 |
432 |
Major |
60 % |
No array_merge() In Loops |
Analyze, Performances, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
67 |
48 |
Major |
57 % |
Logical To in_array() |
Analyze, All, Level 2, ChangedBehavior |
48 |
26 |
Minor |
67 % |
Memoize MagicCall |
Analyze, All, ClassReview, ChangedBehavior |
15 |
8 |
Minor |
0 % |
Pre-increment |
Analyze, Performances, All, Simple, Level 4, CI-checks, CE, ChangedBehavior |
189 |
76 |
Minor |
74 % |
strpos() Too Much |
Analyze, All, CI-checks, CE, ChangedBehavior |
9 |
8 |
Minor |
49 % |
Use array_slice() |
Analyze, All, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
0 % |
array_key_exists() Works On Arrays |
Analyze, All, CompatibilityPHP74, CE, ChangedBehavior |
87 |
35 |
Minor |
0 % |
Assumptions |
Analyze, All, ChangedBehavior |
142 |
62 |
Minor |
0 % |
Use random_int() |
Analyze, Security, CompatibilityPHP71, All, Simple, Level 2, CI-checks, CE, ChangedBehavior |
28 |
11 |
Major |
59 % |
Deprecated PHP Functions |
Analyze, All, CI-checks, CE |
4 |
3 |
Major |
23 % |
Don't Pollute Global Space |
Analyze, All |
396 |
167 |
Minor |
0 % |
Exit Without Argument |
Analyze, All, ChangedBehavior |
15 |
9 |
Minor |
0 % |
False To Array Conversion |
Analyze, All, LintButWontExec, CompatibilityPHP81, CompatibilityPHP82, ChangedBehavior |
47 |
13 |
Minor |
0 % |
Group Use Declaration |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE, ChangedBehavior |
55 |
55 |
Minor |
5 % |
Include Variables |
All, Dump |
4 |
4 |
Minor |
0 % |
Wrong Parameter Type |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
126 |
76 |
Major |
76 % |
Use === null |
Analyze, OneFile, All, RadwellCodes, Simple, php-cs-fixable, CI-checks, CE, ChangedBehavior |
115 |
53 |
Minor |
53 % |
PHP Native Interfaces and Return Type |
Analyze, All, LintButWontExec, CompatibilityPHP81, Deprecated, ChangedBehavior |
6 |
3 |
Minor |
0 % |
List Short Syntax |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Internal, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior |
72 |
55 |
Major |
17 % |
List With Keys |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, Appcontent, CompatibilityPHP53, CompatibilityPHP70, All, CE, ChangedBehavior |
3 |
1 |
Major |
34 % |
Possible Missing Subpattern |
Analyze, All, Top10, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
45 % |
Named Parameter Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, ChangedBehavior |
43 |
28 |
Minor |
0 % |
PHP Native Class Type Compatibility |
Analyze, All, CompatibilityPHP81, ChangedBehavior |
51 |
10 |
Major |
0 % |
Never Type Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CompatibilityPHP80, ChangedBehavior |
2 |
2 |
None |
0 % |
No Class In Global |
Analyze, All, CI-checks, CE, ChangedBehavior |
216 |
166 |
Minor |
77 % |
No Null For Native PHP Functions |
Analyze, All, CompatibilityPHP81, Deprecated, ChangedBehavior |
291 |
130 |
Minor |
0 % |
Only Variable Passed By Reference |
Analyze, All, LintButWontExec, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Php7 Relaxed Keyword |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, CE |
270 |
136 |
Major |
28 % |
Php 8.0 Only TypeHints |
Appinfo, CompatibilityPHP56, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior |
336 |
147 |
Minor |
0 % |
Union Type |
Appinfo, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior |
196 |
68 |
Minor |
0 % |
Php 8.0 Variable Syntax Tweaks |
Appinfo, All, CompatibilityPHP74, CE, ChangedBehavior |
1 |
1 |
Major |
0 % |
Scalar Are Not Arrays |
Analyze, All, CompatibilityPHP74, CI-checks, CE, ChangedBehavior |
138 |
23 |
Minor |
0 % |
Should Use Coalesce |
Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE, ChangedBehavior |
35 |
14 |
Major |
71 % |
Too Many Native Calls |
Analyze, All, ChangedBehavior |
1 |
1 |
Minor |
49 % |
Trailing Comma In Calls |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CE, ChangedBehavior |
37 |
26 |
Minor |
1 % |
Typed Property Usage |
Appinfo, CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, CompatibilityPHP70, CompatibilityPHP71, CompatibilityPHP72, All, CompatibilityPHP73, CE, ChangedBehavior |
4850 |
1564 |
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 |
2650 |
668 |
Major |
90 % |
Avoid Using stdClass |
Analyze, OneFile, All, Simple, Level 4 |
484 |
241 |
Minor |
46 % |
Wrong Type For Native PHP Function |
Analyze, All, CI-checks, CE, ChangedBehavior |
557 |
213 |
Minor |
0 % |
Always Anchor Regex |
Security, All, ChangedBehavior |
50 |
33 |
Major |
65 % |
Avoid Those Hash Functions |
Security, All, ChangedBehavior |
31 |
22 |
Major |
62 % |
Configure Extract |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
25 % |
Direct Injection |
Security, All, ChangedBehavior |
4 |
3 |
Major |
51 % |
Don't Echo Error |
Analyze, Security, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
3 |
2 |
Critical |
35 % |
Encoded Simple Letters |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
41 % |
filter_input() As A Source |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
7 % |
Filter Not Raw |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Incompatible Types With Incoming Values |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Indirect Injection |
Security, All, ChangedBehavior |
8 |
8 |
Critical |
42 % |
Keep Files Access Restricted |
Security, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
No Net For Xml Load |
Security, All, ChangedBehavior |
1 |
1 |
Major |
51 % |
Avoid sleep()/usleep() |
Security, All, ChangedBehavior |
6 |
5 |
Minor |
41 % |
Set Cookie Safe Arguments |
Security, All, ChangedBehavior |
1 |
1 |
Major |
25 % |
Should Use Prepared Statement |
Analyze, Security, All, Simple, CI-checks, CE, ChangedBehavior |
3 |
3 |
Major |
28 % |
Should Use session_regenerateid() |
Security, All, ChangedBehavior |
1 |
1 |
Major |
18 % |
Unserialize Second Arg |
Security, All, ChangedBehavior |
4 |
4 |
Critical |
50 % |
Adding Zero |
Dump |
135 |
3 |
Minor |
69 % |
Altering Foreach Without Reference |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE |
17 |
12 |
Major |
56 % |
Comparison Is Always The Same |
Analyze, All, ChangedBehavior |
281 |
151 |
Minor |
0 % |
Array Access On Literal Array |
Analyze, All, Semantics, ChangedBehavior |
2 |
2 |
Minor |
0 % |
array_merge() With One Arg |
Analyze, All |
2 |
2 |
Minor |
0 % |
Bail Out Early |
Analyze, OneFile, All, Simple, Level 4, ChangedBehavior |
466 |
255 |
Minor |
64 % |
Strict Comparison With Booleans |
Analyze, All, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior |
571 |
276 |
Minor |
77 % |
Buried Assignation |
Analyze, All, ChangedBehavior |
46 |
26 |
Minor |
84 % |
Cast To Boolean |
Analyze, OneFile, All, Simple, Level 1, ChangedBehavior |
7 |
6 |
Minor |
56 % |
Catch Overwrite Variable |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
1 |
1 |
Minor |
25 % |
Check All Types |
Analyze, All, ChangedBehavior |
130 |
49 |
Major |
69 % |
Check Division By Zero |
Analyze, All, ChangedBehavior |
22 |
9 |
Minor |
0 % |
Check JSON |
Analyze, All, CI-checks, CE |
48 |
35 |
Major |
65 % |
Coalesce And Concat |
Analyze, All, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
0 % |
Common Alternatives |
Analyze, All, Simple, ChangedBehavior |
47 |
30 |
Major |
80 % |
Could Be Else |
Analyze, All, ChangedBehavior |
29 |
25 |
Minor |
49 % |
Could Use __DIR__ |
Analyze, All, Simple, Suggestions, Level 3, php-cs-fixable, CI-checks, CE, ChangedBehavior |
8 |
5 |
Major |
56 % |
Could Use Short Assignation |
Analyze, Performances, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
113 |
62 |
Minor |
63 % |
Could Use str_repeat() |
Analyze, All, Level 1, Top10, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
14 % |
Could Use Yield From |
Analyze, Performances, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Dangling Array References |
Analyze, PHP recommendations, ClearPHP, All, Simple, Level 1, Top10, CI-checks, CE, ChangedBehavior |
18 |
11 |
Major |
46 % |
Default Then Discard |
Analyze, All, ChangedBehavior, Readability |
9 |
8 |
Minor |
0 % |
Don't Change The Blind Var |
Analyze, All, ChangedBehavior |
50 |
34 |
Minor |
73 % |
Don't Mix ++ |
Analyze, All, ChangedBehavior |
10 |
6 |
Minor |
56 % |
Don't Read And Write In One Expression |
Analyze, All, CompatibilityPHP73, CompatibilityPHP74, CE, ChangedBehavior |
3 |
1 |
Critical |
38 % |
Don't Reuse Foreach Source |
Analyze, All, ChangedBehavior |
47 |
39 |
Minor |
0 % |
Double Assignation |
Analyze, All, ChangedBehavior |
15 |
10 |
Major |
59 % |
Double Checks |
Analyze, All, ChangedBehavior |
79 |
28 |
Minor |
0 % |
Double Instructions |
Analyze, All, Simple, ChangedBehavior |
9 |
8 |
Minor |
57 % |
Double Object Assignation |
Analyze, All, ClassReview, ChangedBehavior |
1 |
1 |
Minor |
0 % |
Drop Else After Return |
Analyze, OneFile, All, Simple, Suggestions, Level 4, CI-checks, CE, ChangedBehavior |
72 |
29 |
Minor |
70 % |
Echo With Concat |
Analyze, Performances, All, Simple, Suggestions, ChangedBehavior |
50 |
11 |
Minor |
60 % |
Else If Versus Elseif |
Analyze, All, Simple, php-cs-fixable, Rector, CI-checks, CE |
320 |
115 |
Minor |
66 % |
Empty Blocks |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
5 |
3 |
Minor |
51 % |
Empty Json Error |
Analyze, All, ChangedBehavior |
3 |
3 |
Minor |
0 % |
Empty Instructions |
Analyze, Dead code, All, Simple, ChangedBehavior |
4 |
4 |
Minor |
57 % |
Empty Try Catch |
Analyze, All, Level 3 |
44 |
36 |
Minor |
49 % |
Eval() Usage |
Analyze, Appinfo, Security, Performances, PHP recommendations, OneFile, ClearPHP, All, Simple, CE, ChangedBehavior |
17 |
13 |
Major |
39 % |
eval() Without Try |
Analyze, Security, All, Simple, Level 3, CI-checks, CE, ChangedBehavior |
15 |
13 |
Critical |
36 % |
Exit() Usage |
Analyze, Appinfo, OneFile, ClearPHP, All, CI-checks, CE, ChangedBehavior |
37 |
15 |
Major |
61 % |
Switch Fallthrough |
Inventory, Security, All, Stats, ChangedBehavior |
2 |
2 |
Minor |
39 % |
foreach() On Object |
Analyze, All |
125 |
79 |
Minor |
0 % |
Foreach Reference Is Not Modified |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
1 |
1 |
Minor |
24 % |
Global Usage |
Analyze, Appinfo, ClearPHP, All, CE, ChangedBehavior |
8 |
5 |
Minor |
52 % |
Htmlentities Calls |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
17 |
8 |
Major |
40 % |
Htmlentities Using Default Flag |
Analyze, All, Simple, CI-checks, ChangedBehavior |
13 |
7 |
Minor |
0 % |
Identical Case In Switch |
Analyze, All, ChangedBehavior |
35 |
11 |
Minor |
0 % |
Identical Conditions |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
1 |
1 |
Critical |
28 % |
Identical Consecutive Expression |
Analyze, All, ChangedBehavior |
25 |
16 |
Minor |
59 % |
If With Same Conditions |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
18 |
17 |
Major |
47 % |
Iffectations |
Analyze, All, ChangedBehavior |
27 |
19 |
Minor |
80 % |
Implicit Conversion To Int |
Analyze, All, LintButWontExec |
5 |
3 |
Minor |
0 % |
Implode() Arguments Order |
Analyze, All, CI-checks, CE, ChangedBehavior |
3 |
3 |
Minor |
0 % |
Indices Are Int Or String |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
407 |
65 |
Major |
20 % |
Infinite Recursion |
Analyze, All, ChangedBehavior |
12 |
9 |
Major |
0 % |
Invalid Date Scanning Format |
Analyze, All, ChangedBehavior |
1 |
1 |
Major |
0 % |
list() May Omit Variables |
Analyze, All, Simple, Suggestions, Level 3, CI-checks, CE |
14 |
7 |
Minor |
37 % |
Long Arguments |
Analyze, All, ChangedBehavior |
8 |
7 |
Minor |
68 % |
Max Level Of Nesting |
Analyze, All, ChangedBehavior |
83 |
53 |
Minor |
0 % |
Mbstring Unknown Encoding |
Analyze, All, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
0 % |
Merge If Then |
Analyze, All, CI-checks, CE, ChangedBehavior |
216 |
109 |
Minor |
0 % |
Could Merge Ternary Into Ifthen |
Analyze, All, ChangedBehavior |
6 |
6 |
Minor |
0 % |
Mismatched Ternary Alternatives |
Analyze, All, Suggestions, Level 4, ChangedBehavior |
15 |
9 |
Major |
64 % |
Missing Assignation In Branches |
Analyze, All, ChangedBehavior |
347 |
140 |
Minor |
0 % |
Missing Cases In Switch |
Analyze, All, ChangedBehavior |
6 |
4 |
Minor |
36 % |
Maybe Missing New |
Analyze, All, ChangedBehavior |
1 |
1 |
Critical |
57 % |
Mixed Concat And Interpolation |
Analyze, Coding Conventions, All |
36 |
20 |
Minor |
45 % |
Modernize Empty With Expression |
Analyze, OneFile, All, Simple, ChangedBehavior |
55 |
34 |
Minor |
63 % |
Multiple Type Variable |
Analyze, All, Level 4, ChangedBehavior |
4 |
2 |
Minor |
58 % |
Nested Ifthen |
Analyze, All, RadwellCodes, ChangedBehavior |
402 |
128 |
Major |
84 % |
Nested Ternary |
Analyze, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
15 |
7 |
Major |
50 % |
Don't Change Incomings |
Analyze, All, ChangedBehavior |
3 |
2 |
Minor |
44 % |
No Choice |
Analyze, All, Simple, Level 2, Top10, Rector, CI-checks, CE, ChangedBehavior |
803 |
280 |
Major |
42 % |
No Direct Usage Of Returned Value |
Analyze, All, Simple, ChangedBehavior |
1 |
1 |
Major |
39 % |
No Empty Path To File |
Analyze, All, CompatibilityPHP80 |
2 |
2 |
Minor |
0 % |
No Empty String With explode() |
Analyze, All, ChangedBehavior |
1 |
1 |
Minor |
0 % |
No Hardcoded Hash |
Analyze, Security, All, Simple, ChangedBehavior |
4 |
2 |
Critical |
45 % |
No Hardcoded Path |
Analyze, ClearPHP, All, Simple, ChangedBehavior |
1 |
1 |
Major |
35 % |
No Need For Else |
Analyze, All, ChangedBehavior |
86 |
34 |
Minor |
74 % |
No Need For Triple Equal |
Analyze, All, ChangedBehavior |
241 |
122 |
Minor |
0 % |
No Null For Index |
Analyze, All, ChangedBehavior |
97 |
14 |
Minor |
0 % |
No Parenthesis For Language Construct |
Analyze, ClearPHP, All, RadwellCodes, Simple, Suggestions, Level 2, CI-checks, CE, ChangedBehavior |
56 |
34 |
Minor |
62 % |
Avoid Substr() One |
Analyze, Performances, CompatibilityPHP71, All, Simple, Suggestions, Level 2, Top10, CI-checks, CE, ChangedBehavior |
55 |
13 |
Minor |
58 % |
Variable Is Not A Condition |
Analyze, All, ChangedBehavior |
3464 |
881 |
Minor |
93 % |
Non Integer Nor String As Index |
Analyze, All, ChangedBehavior |
52 |
23 |
Minor |
0 % |
@ Operator |
Analyze, Appinfo, Performances, ClearPHP, All, CI-checks, CE, ChangedBehavior |
35 |
11 |
Minor |
65 % |
Not Equal Is Not !== |
Analyze, All, CI-checks, CE, ChangedBehavior |
3 |
2 |
Minor |
0 % |
Not Not |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
21 |
13 |
Minor |
14 % |
Objects Don't Need References |
Analyze, OneFile, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
2 |
2 |
Minor |
40 % |
include_once() Usage |
Analyze, Appinfo, All, CE, ChangedBehavior |
51 |
26 |
Minor |
73 % |
Several Instructions On The Same Line |
Analyze, All, ChangedBehavior |
8 |
5 |
Major |
56 % |
PHP7 Dirname |
CompatibilityPHP54, CompatibilityPHP55, CompatibilityPHP56, CompatibilityPHP53, All, Suggestions, php-cs-fixable, ChangedBehavior |
1 |
1 |
Minor |
44 % |
Print And Die |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
3 |
2 |
Minor |
32 % |
Printf Number Of Arguments |
Analyze, All, CI-checks, CE |
2 |
1 |
Minor |
41 % |
Random Without Try |
Security, All, ChangedBehavior |
6 |
6 |
Critical |
30 % |
Repeated print() |
Analyze, All, Simple, Suggestions, Level 3, Top10, CI-checks, CE, ChangedBehavior |
5 |
4 |
Major |
50 % |
Repeated Regex |
Analyze, All, Level 1, CI-checks, CE, ChangedBehavior |
46 |
25 |
Minor |
47 % |
Results May Be Missing |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
1 |
1 |
Major |
24 % |
Return True False |
Analyze, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
8 |
6 |
Major |
46 % |
Same Conditions In Condition |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
11 |
10 |
Critical |
55 % |
Should Chain Exception |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
80 |
63 |
Minor |
39 % |
Should Use Ternary Operator |
Analyze, OneFile, All, Simple, CI-checks, CE, ChangedBehavior |
201 |
89 |
Minor |
86 % |
Preprocessable |
Analyze, All, Rector, ChangedBehavior |
370 |
156 |
Minor |
85 % |
Should Use Explode Args |
Analyze, All, CI-checks, CE, ChangedBehavior |
3 |
2 |
Minor |
0 % |
Static Inclusions |
Analyze, All, ChangedBehavior |
77 |
46 |
Minor |
0 % |
Static Loop |
Analyze, All, Simple, Level 4, ChangedBehavior |
32 |
14 |
Minor |
67 % |
Strpos()-like Comparison |
Analyze, PHP recommendations, ClearPHP, All, Simple, Level 2, Top10, CI-checks, CE, ChangedBehavior |
15 |
11 |
Major |
54 % |
Suspicious Comparison |
Analyze, All, Level 3, ChangedBehavior |
63 |
28 |
Major |
39 % |
Switch To Switch |
Analyze, All, RadwellCodes, Simple, ChangedBehavior |
89 |
25 |
Minor |
58 % |
Switch Without Default |
Analyze, ClearPHP, All, Simple, CI-checks, CE, ChangedBehavior |
47 |
31 |
Major |
69 % |
Test Then Cast |
Analyze, All, ChangedBehavior |
7 |
4 |
Major |
34 % |
Timestamp Difference |
Analyze, All, Simple, Level 3, CI-checks, CE, ChangedBehavior |
17 |
10 |
Major |
49 % |
Unchecked Resources |
Analyze, ClearPHP, All, Simple, Level 2, CI-checks, CE, ChangedBehavior |
1 |
1 |
Major |
50 % |
Unconditional Break In Loop |
Analyze, All, Level 3, CI-checks, CE |
36 |
21 |
Major |
48 % |
Unreachable Code |
Dead code, OneFile, ClearPHP, All, Simple, Suggestions, Level 3, Unused, ChangedBehavior |
107 |
56 |
Major |
61 % |
Unsupported Operand Types |
Analyze, PHP recommendations, All, ChangedBehavior |
5 |
3 |
Minor |
0 % |
Use Constant Instead Of Function |
Analyze, PHP recommendations, All, php-cs-fixable, CI-checks, CE, ChangedBehavior |
21 |
16 |
Minor |
61 % |
Use Positive Condition |
Analyze, OneFile, All, Simple, ChangedBehavior |
90 |
56 |
Minor |
82 % |
Use Same Types For Comparisons |
Analyze, All |
14 |
8 |
Minor |
0 % |
Use Variable Created Inside Loop |
Dead code, All, ChangedBehavior |
115 |
65 |
Minor |
0 % |
Useless Type Casting |
Analyze, PHP recommendations, OneFile, All, RadwellCodes, Simple, Level 4, CI-checks, CE, ChangedBehavior |
41 |
21 |
Minor |
47 % |
Useless Check Before Foreach |
Analyze, OneFile, All, Simple, Level 1, CI-checks, CE |
2 |
2 |
Minor |
35 % |
Useless Coalesce |
Analyze, All, ChangedBehavior |
10 |
7 |
Minor |
0 % |
Useless Instructions |
Analyze, OneFile, ClearPHP, All, Simple, Level 1, CI-checks, CE, ChangedBehavior |
803 |
279 |
Minor |
63 % |
Useless Null Coalesce |
Analyze, All, Typehints, ChangedBehavior |
811 |
360 |
Minor |
0 % |
Useless Parenthesis |
Analyze, All, Simple, CI-checks, CE, ChangedBehavior |
124 |
44 |
Minor |
81 % |
Useless Short Ternary |
Analyze, All, ChangedBehavior |
8 |
5 |
Minor |
0 % |
Useless Switch |
Analyze, All, Simple, ChangedBehavior |
11 |
10 |
Major |
32 % |
var_dump()... Usage |
Analyze, Security, ClearPHP, All, CI-checks, CE, ChangedBehavior |
1 |
1 |
Critical |
42 % |
Wrong Precedence In Expression |
Analyze, All, ChangedBehavior |
4 |
4 |
Minor |
0 % |
Already Parents Trait |
Analyze, All |
1 |
1 |
Minor |
0 % |
Dependant Trait |
Analyze, All, Level 3, ChangedBehavior |
3 |
3 |
Minor |
28 % |
Empty Traits |
Analyze, Dead code, All, Simple, ChangedBehavior |
2 |
2 |
Minor |
12 % |
Trait Is Not A Type |
Analyze, All, ClassReview, Typehints |
9 |
3 |
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 |
4 |
4 |
Minor |
33 % |
Should Typecast |
Analyze, OneFile, All, Simple, Rector, CI-checks, CE, ChangedBehavior |
151 |
71 |
Minor |
49 % |
String May Hold A Variable |
Analyze, All, Simple, ChangedBehavior |
94 |
40 |
Minor |
59 % |
Missing Some Returntype |
Analyze, All, Typehints, CI-checks, CE, ChangedBehavior |
201 |
123 |
Minor |
0 % |
StandaloneType True False Null |
Analyze, Appcontent, All, ChangedBehavior |
2630 |
657 |
Minor |
0 % |
Wrong Type With Default |
Analyze, All, LintButWontExec, ClassReview, ChangedBehavior |
27 |
24 |
Minor |
0 % |
Assigned Twice |
Analyze, All, ChangedBehavior |
588 |
138 |
Minor |
79 % |
Overwritten Literals |
Analyze, All, ChangedBehavior |
746 |
145 |
Major |
79 % |
Recycled Variables |
Analyze, All |
20 |
9 |
Minor |
0 % |
Undefined Variable |
Analyze, All, CI-checks, CE, Undefined |
140 |
31 |
Minor |
77 % |
Used Once Variables |
Analyze, OneFile, All, Simple, Top10, ChangedBehavior |
10 |
9 |
Minor |
74 % |
Used Once Variables (In Scope) |
Analyze, OneFile, ClearPHP, All, Simple, Level 4, CE, ChangedBehavior |
3593 |
1261 |
Minor |
95 % |
Written Only Variables |
Analyze, OneFile, All, Simple, Unused, ChangedBehavior |
199 |
60 |
Minor |
87 % |