summaryrefslogtreecommitdiffstats
path: root/functions.files.inc.php
blob: 4105eebf39c992e5656e1d8ccadc9738f940c81c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
function getDirectoryContent($path) {
    if (dir_exists($path)) {
        return array_diff(scandir($path), array('..', '.'));
    }
    return [];
}

function dir_exists($path) {
    return file_exists($path) && is_dir($path);
}

function rm_dir($path, $recursive = FALSE) {
    if (!dir_exists($path)) {
        return TRUE;
    }

    if ($recursive) {
        foreach (getDirectoryContent($path) as $item) {
            $itemPath = $path.DIRECTORY_SEPARATOR.$item;
            if (dir_exists($itemPath)) {
                rm_dir($itemPath, $recursive);
            } else {
                unlink($itemPath);
            }
        }
    }

    return rmdir($path);
}
?>