Class SimpleCacheEngine
Wrapper for Cake engines that allow them to support the PSR16 Simple Cache Interface
Properties summary
- $innerEngine protected
\Cake\Cache\CacheEngine
The wrapped cache engine object.
Method Summary
- set() public
Persists data in the cache, uniquely referenced by the given key with an optional expiration TTL time.
Method Detail
__construct() public
__construct(\Cake\Cache\CacheEngine $innerEngine)
Constructor
Parameters
-
\Cake\Cache\CacheEngine
$innerEngine The decorated engine.
add() public
add(mixed $key, mixed $value)
Write data for key into a cache engine if it doesn't exist already.
Parameters
-
string
$key Identifier for the data.
-
mixed
$value Data to be cached - anything except a resource.
Returns
bool
True if the data was successfully cached, false on failure. Or if the key existed already.
clear() public
clear()
Wipes clean the entire cache's keys.
Returns
bool
True on success and false on failure.
clearGroup() public
clearGroup(mixed $group)
Clear all values belonging to the named group.
Each implementation needs to decide whether actually delete the keys or just augment a group generation value to achieve the same result.
Parameters
-
string
$group name of the group to be cleared
Returns
bool
decrement() public
decrement(mixed $key, mixed $offset)
Decrement a number under the key and return decremented value
Parameters
-
string
$key Identifier for the data
-
int
$offset optional How much to subtract
Returns
int|false
New incremented value, false otherwise
delete() public
delete(mixed $key)
Delete an item from the cache by its unique key.
Parameters
-
string
$key The unique cache key of the item to delete.
Returns
bool
True if the item was successfully removed. False if there was an error.
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
deleteMultiple() public
deleteMultiple(mixed $keys)
Deletes multiple cache items in a single operation.
Parameters
-
iterable
$keys A list of string-based keys to be deleted.
Returns
bool
True if the items were successfully removed. False if there was an error.
Throws
Cake\Cache\InvalidArgumentException
If $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.
ensureValidKey() protected
ensureValidKey(mixed $key)
Ensure the validity of the given cache key.
Parameters
-
string
$key Key to check.
Throws
Cake\Cache\InvalidArgumentException
When the key is not valid.
ensureValidKeys() protected
ensureValidKeys(mixed $keys)
Ensure the validity of the given cache keys.
Parameters
-
mixed
$keys The keys to check.
Throws
Cake\Cache\InvalidArgumentException
When the keys are not valid.
get() public
get(mixed $key, mixed $default)
Fetches the value for a given key from the cache.
Parameters
-
string
$key The unique key of this item in the cache.
-
mixed
$default optional Default value to return if the key does not exist.
Returns
mixed
The value of the item from the cache, or $default in case of cache miss.
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
getMultiple() public
getMultiple(mixed $keys, mixed $default)
Obtains multiple cache items by their unique keys.
Parameters
-
iterable
$keys A list of keys that can obtained in a single operation.
-
mixed
$default optional Default value to return for keys that do not exist.
Returns
iterable
A list of key => value pairs. Cache keys that do not exist or are stale will have $default as value.
Throws
Cake\Cache\InvalidArgumentException
If $keys is neither an array nor a Traversable, or if any of the $keys are not a legal value.
has() public
has(mixed $key)
Determines whether an item is present in the cache.
NOTE: It is recommended that has() is only to be used for cache warming type purposes and not to be used within your live applications operations for get/set, as this method is subject to a race condition where your has() will return true and immediately after, another script can remove it making the state of your app out of date.
Parameters
-
string
$key The cache item key.
Returns
bool
Throws
Cake\Cache\InvalidArgumentException
If the $key string is not a legal value.
increment() public
increment(mixed $key, mixed $offset)
Increment a number under the key and return incremented value
Parameters
-
string
$key Identifier for the data
-
int
$offset optional How much to add
Returns
int|false
New incremented value, false otherwise
set() public
set(mixed $key, mixed $value, mixed $ttl)
Persists data in the cache, uniquely referenced by the given key with an optional expiration TTL time.
Parameters
-
string
$key The key of the item to store.
-
mixed
$value The value of the item to store, must be serializable.
-
\DateInterval|int|null
$ttl optional Optional. The TTL value of this item. If no value is sent and the driver supports TTL then the library may set a default value for it or let the driver take care of that.
Returns
bool
True on success and false on failure.
Throws
Cake\Cache\InvalidArgumentException
MUST be thrown if the $key string is not a legal value.
setMultiple() public
setMultiple(mixed $values, mixed $ttl)
Persists a set of key => value pairs in the cache, with an optional TTL.
Parameters
-
iterable
$values A list of key => value pairs for a multiple-set operation.
-
\DateInterval|int|null
$ttl optional Optional. The TTL value of this item. If no value is sent and the driver supports TTL then the library may set a default value for it or let the driver take care of that.
Returns
bool
True on success and false on failure.
Throws
Cake\Cache\InvalidArgumentException
If $values is neither an array nor a Traversable, or if any of the $values are not a legal value.
Property Detail
$innerEngine protected
The wrapped cache engine object.
Type
\Cake\Cache\CacheEngine
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.9/class-Cake.Cache.SimpleCacheEngine.html