12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <?php
- namespace Illuminate\Cache;
- class ApcWrapper
- {
- /**
- * Indicates if APCu is supported.
- *
- * @var bool
- */
- protected $apcu = false;
- /**
- * Create a new APC wrapper instance.
- *
- * @return void
- */
- public function __construct()
- {
- $this->apcu = function_exists('apcu_fetch');
- }
- /**
- * Get an item from the cache.
- *
- * @param string $key
- * @return mixed
- */
- public function get($key)
- {
- $fetchedValue = $this->apcu ? apcu_fetch($key, $success) : apc_fetch($key, $success);
- return $success ? $fetchedValue : null;
- }
- /**
- * Store an item in the cache.
- *
- * @param string $key
- * @param mixed $value
- * @param int $seconds
- * @return array|bool
- */
- public function put($key, $value, $seconds)
- {
- return $this->apcu ? apcu_store($key, $value, $seconds) : apc_store($key, $value, $seconds);
- }
- /**
- * Increment the value of an item in the cache.
- *
- * @param string $key
- * @param mixed $value
- * @return int|bool
- */
- public function increment($key, $value)
- {
- return $this->apcu ? apcu_inc($key, $value) : apc_inc($key, $value);
- }
- /**
- * Decrement the value of an item in the cache.
- *
- * @param string $key
- * @param mixed $value
- * @return int|bool
- */
- public function decrement($key, $value)
- {
- return $this->apcu ? apcu_dec($key, $value) : apc_dec($key, $value);
- }
- /**
- * Remove an item from the cache.
- *
- * @param string $key
- * @return bool
- */
- public function delete($key)
- {
- return $this->apcu ? apcu_delete($key) : apc_delete($key);
- }
- /**
- * Remove all items from the cache.
- *
- * @return bool
- */
- public function flush()
- {
- return $this->apcu ? apcu_clear_cache() : apc_clear_cache('user');
- }
- }
|