/usr/share/php/Assetic/Util/FilesystemUtils.php is in php-assetic 1.3.2-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | <?php
/*
* This file is part of the Assetic package, an OpenSky project.
*
* (c) 2010-2014 OpenSky Project Inc
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Assetic\Util;
/**
* Filesystem utilities.
*
* @author Kris Wallsmith <kris.wallsmith@gmail.com>
*/
class FilesystemUtils
{
/**
* Recursively removes a directory from the filesystem.
*/
public static function removeDirectory($directory)
{
$inner = new \RecursiveDirectoryIterator($directory, \FilesystemIterator::SKIP_DOTS);
$outer = new \RecursiveIteratorIterator($inner, \RecursiveIteratorIterator::SELF_FIRST);
// remove the files first
foreach ($outer as $file) {
if ($file->isFile()) {
unlink($file);
}
}
// remove the sub-directories next
$files = iterator_to_array($outer);
foreach (array_reverse($files) as $file) {
/** @var \SplFileInfo $file */
if ($file->isDir()) {
rmdir($file);
}
}
// finally the directory itself
rmdir($directory);
}
/**
* Creates a throw-away directory.
*
* This is not considered a "temporary" directory because it will not be
* automatically deleted at the end of the request or process. It must be
* deleted manually.
*
* @param string $prefix A prefix for the directory name
*
* @return string The directory path
*/
public static function createThrowAwayDirectory($prefix)
{
$directory = self::getTemporaryDirectory().DIRECTORY_SEPARATOR.uniqid('assetic_'.$prefix);
mkdir($directory);
return $directory;
}
/**
* Creates a temporary file.
*
* @param string $prefix A prefix for the file name
*
* @return string The file path
*/
public static function createTemporaryFile($prefix)
{
return tempnam(self::getTemporaryDirectory(), 'assetic_'.$prefix);
}
public static function getTemporaryDirectory()
{
return realpath(sys_get_temp_dir());
}
}
|