芝麻web文件管理V1.00
编辑当前文件:/home/qrafawbu/rentandbuyrealty.com/pay/vendor/jms/metadata/src/Cache/FileCache.php
dir = rtrim($dir, '\\/'); } /** * {@inheritDoc} */ public function load(string $class): ?ClassMetadata { $path = $this->dir . '/' . strtr($class, '\\', '-') . '.cache.php'; if (!file_exists($path)) { return null; } try { $metadata = include $path; if ($metadata instanceof ClassMetadata) { return $metadata; } // if the file does not return anything, the return value is integer `1`. } catch (\ParseError $e) { // ignore corrupted cache } return null; } /** * {@inheritDoc} */ public function put(ClassMetadata $metadata): void { if (!is_writable($this->dir)) { throw new \InvalidArgumentException(sprintf('The directory "%s" is not writable.', $this->dir)); } $path = $this->dir . '/' . strtr($metadata->name, '\\', '-') . '.cache.php'; $tmpFile = tempnam($this->dir, 'metadata-cache'); if (false === $tmpFile) { $this->evict($metadata->name); return; } $data = 'evict($metadata->name); // also evict the cache to not use an outdated version. return; } // Let's not break filesystems which do not support chmod. @chmod($tmpFile, 0666 & ~umask()); $this->renameFile($tmpFile, $path); } /** * Renames a file with fallback for windows * */ private function renameFile(string $source, string $target): void { if (false === @rename($source, $target)) { if (defined('PHP_WINDOWS_VERSION_BUILD')) { if (false === copy($source, $target)) { throw new \RuntimeException(sprintf('(WIN) Could not write new cache file to %s.', $target)); } if (false === unlink($source)) { throw new \RuntimeException(sprintf('(WIN) Could not delete temp cache file to %s.', $source)); } } else { throw new \RuntimeException(sprintf('Could not write new cache file to %s.', $target)); } } } /** * {@inheritDoc} */ public function evict(string $class): void { $path = $this->dir . '/' . strtr($class, '\\', '-') . '.cache.php'; if (file_exists($path)) { unlink($path); } } }