php namespace Cache; class File { private $expire; public function __construct($expire = 3600) { $this->expire = $expire; $files = glob(DIR_CACHE . 'cache.*'); if ($files) { foreach ($files as $file) { $time = substr(strrchr($file, '.'), 1); if ($time < time()) { if (file_exists($file)) { unlink($file); } } } } } public function get($key) { $files = glob(DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.*'); if ($files) { $handle = fopen($files[0], 'r'); flock($handle, LOCK_SH); $data = fread($handle, filesize($files[0])); flock($handle, LOCK_UN); fclose($handle); return json_decode($data, true); } return false; } public function set($key, $value) { $this->delete($key); $file = DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.' . (time() + $this->expire); $handle = fopen($file, 'w'); flock($handle, LOCK_EX); fwrite($handle, json_encode($value)); fflush($handle); flock($handle, LOCK_UN); fclose($handle); } public function delete($key) { $files = glob(DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.*'); if ($files) { foreach ($files as $file) { if (file_exists($file)) { unlink($file); } } } } }
Fatal error: Uncaught Exception: Error: Could not load cache adaptor file cache! in /home/u624081/ddk.kz/html/system/library/cache.php:11 Stack trace: #0 /home/u624081/ddk.kz/html/system/framework.php(49): Cache->__construct('file', 3600) #1 /home/u624081/ddk.kz/html/system/startup.php(105): require_once('/home/u624081/d...') #2 /home/u624081/ddk.kz/html/index.php(49): start('catalog') #3 {main} thrown in /home/u624081/ddk.kz/html/system/library/cache.php on line 11