storage[$key] ?? null; } /** * Store an item in the cache for a given number of minutes. * * @param string $key * @param mixed $value * @param float|int $minutes * @return void */ public function put($key, $value, $minutes) { $this->storage[$key] = $value; } /** * Increment the value of an item in the cache. * * @param string $key * @param mixed $value * @return int */ public function increment($key, $value = 1) { $this->storage[$key] = ! isset($this->storage[$key]) ? $value : ((int) $this->storage[$key]) + $value; return $this->storage[$key]; } /** * Decrement the value of an item in the cache. * * @param string $key * @param mixed $value * @return int */ public function decrement($key, $value = 1) { return $this->increment($key, $value * -1); } /** * Store an item in the cache indefinitely. * * @param string $key * @param mixed $value * @return void */ public function forever($key, $value) { $this->put($key, $value, 0); } /** * Remove an item from the cache. * * @param string $key * @return bool */ public function forget($key) { unset($this->storage[$key]); return true; } /** * Remove all items from the cache. * * @return bool */ public function flush() { $this->storage = []; return true; } /** * Get the cache key prefix. * * @return string */ public function getPrefix() { return ''; } }