src/Flysystem.php
The class Flysystem has 19 public methods. Consider refactoring Flysystem to keep number of public methods under 10. Open
Open
class Flysystem
{
/**
* @var string[]
*/
- Read upRead up
- Exclude checks
TooManyPublicMethods
Since: 0.1
A class with too many public methods is probably a good suspect for refactoring, in order to reduce its complexity and find a way to have more fine grained objects.
By default it ignores methods starting with 'get' or 'set'.
Example
Source https://phpmd.org/rules/codesize.html#toomanypublicmethods
The class Flysystem has an overall complexity of 50 which is very high. The configured complexity threshold is 50. Open
Open
class Flysystem
{
/**
* @var string[]
*/
- Exclude checks
Flysystem
has 26 functions (exceeds 20 allowed). Consider refactoring. Open
Open
class Flysystem
{
/**
* @var string[]
*/
The method listContents has a boolean flag argument $recursive, which is a certain sign of a Single Responsibility Principle violation. Open
Open
public function listContents($directory = '', $recursive = false)
- Read upRead up
- Exclude checks
BooleanArgumentFlag
Since: 1.4.0
A boolean flag argument is a reliable indicator for a violation of the Single Responsibility Principle (SRP). You can fix this problem by extracting the logic in the boolean flag into its own class or method.
Example
class Foo {
public function bar($flag = true) {
}
}
Source https://phpmd.org/rules/cleancode.html#booleanargumentflag
Missing class import via use statement (line '131', column '40'). Open
Open
$this->fs = new Filesystem(new \League\Flysystem\ZipArchive\ZipArchiveAdapter($path));
- Read upRead up
- Exclude checks
MissingImport
Since: 2.7.0
Importing all external classes in a file through use statements makes them clearly visible.
Example
function make() {
return new \stdClass();
}
Source http://phpmd.org/rules/cleancode.html#MissingImport
Avoid variables with short names like $fs. Configured minimum length is 3. Open
Open
protected $fs = null;
- Read upRead up
- Exclude checks
ShortVariable
Since: 0.2
Detects when a field, local, or parameter has a very short name.
Example
class Something {
private $q = 15; // VIOLATION - Field
public static function main( array $as ) { // VIOLATION - Formal
$r = 20 + $this->q; // VIOLATION - Local
for (int $i = 0; $i < 10; $i++) { // Not a Violation (inside FOR)
$r += $this->q;
}
}
}