Interface ICache
ICache is the interface that must be implemented by cache components.
This interface must be implemented by classes supporting caching feature.
Methods summary
public
mixed
|
#
get( string $id )
Retrieves a value from cache with a specified key.
Retrieves a value from cache with a specified key.
Parameters
- $id
string $id a key identifying the cached value
Returns
mixed the value stored in cache, false if the value is not in the cache or expired.
|
public
array
|
#
mget( array $ids )
Retrieves multiple values from cache with the specified keys. Some caches
(such as memcache, apc) allow retrieving multiple cached values at one time,
which may improve the performance since it reduces the communication cost. In
case a cache doesn't support this feature natively, it will be simulated by this
method.
Retrieves multiple values from cache with the specified keys. Some caches
(such as memcache, apc) allow retrieving multiple cached values at one time,
which may improve the performance since it reduces the communication cost. In
case a cache doesn't support this feature natively, it will be simulated by this
method.
Parameters
- $ids
array $ids list of keys identifying the cached values
Returns
array list of cached values corresponding to the specified keys. The array is returned
in terms of (key,value) pairs. If a value is not cached or expired, the
corresponding array value will be false.
|
public
boolean
|
#
set( string $id, mixed $value, integer $expire = 0, ICacheDependency $dependency = null )
Stores a value identified by a key into cache. If the cache already contains
such a key, the existing value and expiration time will be replaced with the new
ones.
Stores a value identified by a key into cache. If the cache already contains
such a key, the existing value and expiration time will be replaced with the new
ones.
Parameters
- $id
string $id the key identifying the value to be cached
- $value
mixed $value the value to be cached
- $expire
integer $expire the number of seconds in which the cached value will expire. 0 means
never expire.
- $dependency
ICacheDependency
$dependency dependency of the cached item. If the dependency changes, the item
is labelled invalid.
Returns
boolean true if the value is successfully stored into cache, false otherwise
|
public
boolean
|
#
add( string $id, mixed $value, integer $expire = 0, ICacheDependency $dependency = null )
Stores a value identified by a key into cache if the cache does not contain
this key. Nothing will be done if the cache already contains the key.
Stores a value identified by a key into cache if the cache does not contain
this key. Nothing will be done if the cache already contains the key.
Parameters
- $id
string $id the key identifying the value to be cached
- $value
mixed $value the value to be cached
- $expire
integer $expire the number of seconds in which the cached value will expire. 0 means
never expire.
- $dependency
ICacheDependency
$dependency dependency of the cached item. If the dependency changes, the item
is labelled invalid.
Returns
boolean true if the value is successfully stored into cache, false otherwise
|
public
boolean
|
#
delete( string $id )
Deletes a value with the specified key from cache
Deletes a value with the specified key from cache
Parameters
- $id
string $id the key of the value to be deleted
Returns
boolean whether the deletion is successful
|
public
boolean
|
#
flush( )
Deletes all values from cache. Be careful of performing this operation if the
cache is shared by multiple applications.
Deletes all values from cache. Be careful of performing this operation if the
cache is shared by multiple applications.
Returns
boolean whether the flush operation was successful.
|