Add support for closures to File cache driver.

This commit is contained in:
Taylor Otwell
2011-07-07 07:29:16 -07:00
parent ac38876e34
commit 715bed748d

View File

@@ -36,20 +36,17 @@ class File implements \System\Cache\Driver {
if ( ! file_exists(APP_PATH.'storage/cache/'.$key))
{
return $default;
return is_callable($default) ? call_user_func($default) : $default;
}
$cache = file_get_contents(APP_PATH.'storage/cache/'.$key);
// --------------------------------------------------
// Has the cache expired? The UNIX expiration time
// is stored at the beginning of the file.
// --------------------------------------------------
// Has the cache expired? The UNIX expiration time is stored at the beginning of the file.
if (time() >= substr($cache, 0, 10))
{
$this->forget($key);
return $default;
return is_callable($default) ? call_user_func($default) : $default;
}
return $this->items[$key] = unserialize(substr($cache, 10));