* // Determine if the "name" item exists in the cache * $exists = Cache::driver()->has('name'); * * * @param string $key * @return bool */ public function has($key) { return ( ! is_null($this->get($key))); } /** * Retrieve an item from the cache driver. * * @param string $key * @return mixed */ protected function retrieve($key) { if ( ! file_exists(CACHE_PATH.$key)) return null; if (time() >= substr($cache = file_get_contents(CACHE_PATH.$key), 0, 10)) { return $this->forget($key); } return unserialize(substr($cache, 10)); } /** * Write an item to the cache for a given number of minutes. * * * // Write the "name" item to the cache for 30 minutes * Cache::driver()->put('name', 'Fred', 30); * * * @param string $key * @param mixed $value * @param int $minutes * @return void */ public function put($key, $value, $minutes) { file_put_contents(CACHE_PATH.$key, (time() + ($minutes * 60)).serialize($value), LOCK_EX); } /** * Delete an item from the cache. * * @param string $key * @return void */ public function forget($key) { @unlink(CACHE_PATH.$key); } }