diff options
author | Andrew Dolgov <[email protected]> | 2019-08-13 12:04:36 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2019-08-13 12:04:36 +0300 |
commit | 86308b30eadf1e42a2007b13327c12748f222018 (patch) | |
tree | ca5933144da8c5ca53e807937eadab52f02da71f /classes/diskcache.php | |
parent | b68db2d02c96cde9b1855b7d95070a3ac49d1f7e (diff) |
add classes/diskcache
Diffstat (limited to 'classes/diskcache.php')
-rw-r--r-- | classes/diskcache.php | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/classes/diskcache.php b/classes/diskcache.php new file mode 100644 index 000000000..fdfc46cb1 --- /dev/null +++ b/classes/diskcache.php @@ -0,0 +1,51 @@ +<?php +class DiskCache { + private $dir; + + public function __construct($dir) { + $this->dir = basename($dir); + } + + public function getDir() { + return $this->dir; + } + + public function exists($filename) { + return file_exists($this->getFullPath($filename)); + } + + public function getSize($filename) { + if ($this->exists($filename)) + return filesize($this->getFullPath($filename)); + else + return -1; + } + + public function getFullPath($filename) { + $filename = basename($filename); + + return CACHE_DIR . "/" . $this->dir . "/" . $filename; + } + + public function put($filename, $data) { + return file_put_contents($this->getFullPath($filename), $data); + } + + public function touch($filename) { + return touch($this->getFullPath($filename)); + } + + public function get($filename) { + if ($this->exists($filename)) + return file_get_contents($this->getFullPath($filename)); + else + return null; + } + + public function getMimeType($filename) { + if ($this->exists($filename)) + return mime_content_type($this->getFullPath($filename)); + else + return null; + } +} |