Passed
Pull Request — master (#66)
by
unknown
24:32 queued 09:05
created

Installer   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 15
Duplicated Lines 0 %

Importance

Changes 5
Bugs 2 Features 0
Metric Value
wmc 5
eloc 8
c 5
b 2
f 0
dl 0
loc 15
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A postUpdate() 0 3 1
A chmodRecursive() 0 8 4
1
<?php
2
3
declare(strict_types=1);
4
5
namespace App;
6
7
use Composer\Script\Event;
8
use RecursiveIteratorIterator;
9
10
final class Installer
11
{
12
    public static function postUpdate(Event $event = null): void
0 ignored issues
show
Unused Code introduced by
The parameter $event is not used and could be removed. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-unused  annotation

12
    public static function postUpdate(/** @scrutinizer ignore-unused */ Event $event = null): void

This check looks for parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
13
    {
14
        self::chmodRecursive('runtime', 0777);
15
    }
16
17
    private static function chmodRecursive(string $path, int $mode): void
18
    {
19
        chmod($path, $mode);
20
        $iterator = new RecursiveIteratorIterator(new \RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);
21
        foreach ($iterator as $item) {
22
            $filename = $item->getFileName();
23
            if (!($filename === '.' || $filename === '..')) {
24
                chmod((string) $item, $mode);
25
            }
26
        }
27
    }
28
}
29