revision display support
[phorkie.git] / src / phorkie / Tools.php
1 <?php
2 namespace phorkie;
3
4
5 class Tools
6 {
7     public static function recursiveDelete($path)
8     {
9         if (!is_dir($path) || is_link($path)) {
10             return unlink($path);
11         }
12         foreach (scandir($path) as $file) {
13             if ($file == '.' || $file == '..') {
14                 continue;
15             }
16             $filepath = $path . DIRECTORY_SEPARATOR . $file;
17             if (!static::recursiveDelete($filepath)) {
18                 return false;
19             };
20         }
21         return rmdir($path);
22     }
23
24     /**
25      * Create a full URL with protocol and host name
26      *
27      * @param string $path Path to the file, with leading /
28      *
29      * @return string Full URL
30      */
31     public static function fullUrl($path)
32     {
33         if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']) {
34             $prot = 'https';
35         } else {
36             $prot = 'http';
37         }
38         return $prot . '://' . $_SERVER['HTTP_HOST'] . $path;
39     }
40 }
41
42 ?>