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

Installer::chmodRecursive()   A

Complexity

Conditions 4
Paths 3

Size

Total Lines 8
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 6
c 2
b 0
f 0
dl 0
loc 8
rs 10
cc 4
nc 3
nop 2
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