????
Current Path : /proc/self/cwd/wp-content/plugins/presto-player/vendor/typisttech/imposter/src/ |
Current File : //proc/self/cwd/wp-content/plugins/presto-player/vendor/typisttech/imposter/src/Filesystem.php |
<?php declare(strict_types=1); namespace TypistTech\Imposter; use FilesystemIterator; use RecursiveDirectoryIterator; use RecursiveIteratorIterator; use RuntimeException; class Filesystem implements FilesystemInterface { /** * @param string $path * * @return \SplFileInfo[] * @throws \UnexpectedValueException */ public function allFiles(string $path): array { $iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS) ); return iterator_to_array($iterator); } /** * Extract the parent directory from a file path. * * @param string $path * * @return string */ public function dirname(string $path): string { return pathinfo($path, PATHINFO_DIRNAME); } /** * Get the contents of a file. * * @param string $path * * @return string * @throws \RuntimeException */ public function get(string $path): string { if (! $this->isFile($path)) { throw new RuntimeException('File does not exist at path ' . $path); } return file_get_contents($path); } /** * Determine if the given path is a file. * * @param string $path * * @return bool */ public function isFile(string $path): bool { return is_file($path); } /** * Determine if the given path is a directory. * * @param string $path * * @return bool */ public function isDir(string $path): bool { return is_dir($path); } /** * Write the contents of a file. * * @param string $path * @param string $contents * * @return int|false */ public function put(string $path, string $contents) { return file_put_contents($path, $contents); } }