Linux unitednationsplay.com 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
nginx/1.20.1
Server IP : 188.130.139.92 & Your IP : 3.140.199.3
Domains :
Cant Read [ /etc/named.conf ]
User : web
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
home /
www /
3 /
spatie /
temporary-directory /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
TemporaryDirectory.php
3.99
KB
-rw-r--r--
2020-11-09 09:00
Save
Rename
<?php namespace Spatie\TemporaryDirectory; use Exception; use FilesystemIterator; use InvalidArgumentException; class TemporaryDirectory { /** @var string */ protected $location; /** @var string */ protected $name; /** @var bool */ protected $forceCreate = false; public function __construct(string $location = '') { $this->location = $this->sanitizePath($location); } public function create(): self { if (empty($this->location)) { $this->location = $this->getSystemTemporaryDirectory(); } if (empty($this->name)) { $this->name = mt_rand().'-'.str_replace([' ', '.'], '', microtime()); } if ($this->forceCreate && file_exists($this->getFullPath())) { $this->deleteDirectory($this->getFullPath()); } if (file_exists($this->getFullPath())) { throw new InvalidArgumentException("Path `{$this->getFullPath()}` already exists."); } mkdir($this->getFullPath(), 0777, true); return $this; } public function force(): self { $this->forceCreate = true; return $this; } public function name(string $name): self { $this->name = $this->sanitizeName($name); return $this; } public function location(string $location): self { $this->location = $this->sanitizePath($location); return $this; } public function path(string $pathOrFilename = ''): string { if (empty($pathOrFilename)) { return $this->getFullPath(); } $path = $this->getFullPath().DIRECTORY_SEPARATOR.trim($pathOrFilename, '/'); $directoryPath = $this->removeFilenameFromPath($path); if (! file_exists($directoryPath)) { mkdir($directoryPath, 0777, true); } return $path; } public function empty(): self { $this->deleteDirectory($this->getFullPath()); mkdir($this->getFullPath(), 0777, true); return $this; } public function delete(): bool { return $this->deleteDirectory($this->getFullPath()); } protected function getFullPath(): string { return $this->location.($this->name ? DIRECTORY_SEPARATOR.$this->name : ''); } protected function isValidDirectoryName(string $directoryName): bool { return strpbrk($directoryName, '\\/?%*:|"<>') === false; } protected function getSystemTemporaryDirectory(): string { return rtrim(sys_get_temp_dir(), DIRECTORY_SEPARATOR); } protected function sanitizePath(string $path): string { $path = rtrim($path); return rtrim($path, DIRECTORY_SEPARATOR); } protected function sanitizeName(string $name): string { if (! $this->isValidDirectoryName($name)) { throw new Exception("The directory name `$name` contains invalid characters."); } return trim($name); } protected function removeFilenameFromPath(string $path): string { if (! $this->isFilePath($path)) { return $path; } return substr($path, 0, strrpos($path, DIRECTORY_SEPARATOR)); } protected function isFilePath(string $path): bool { return strpos($path, '.') !== false; } protected function deleteDirectory(string $path): bool { if (is_link($path)) { return unlink($path); } if (! file_exists($path)) { return true; } if (! is_dir($path)) { return unlink($path); } foreach (new FilesystemIterator($path) as $item) { if (! $this->deleteDirectory($item)) { return false; } } /* * By forcing a php garbage collection cycle using gc_collect_cycles() we can ensure * that the rmdir does not fail due to files still being reserved in memory. */ gc_collect_cycles(); return rmdir($path); } }