ICache
包 | system.caching |
---|---|
继承 | interface ICache |
子类 | CApcCache, CCache, CDbCache, CDummyCache, CEAcceleratorCache, CFileCache, CMemCache, CXCache, CZendDataCache |
可用自 | 1.0 |
版本 | $Id$ |
This interface must be implemented by classes supporting caching feature.
公共方法
方法 | 描述 | 被定义在 |
---|---|---|
add() | Stores a value identified by a key into cache if the cache does not contain this key. | ICache |
delete() | Deletes a value with the specified key from cache | ICache |
flush() | Deletes all values from cache. | ICache |
get() | Retrieves a value from cache with a specified key. | ICache |
mget() | Retrieves multiple values from cache with the specified keys. | ICache |
set() | Stores a value identified by a key into cache. | ICache |
方法详情
abstract public boolean add(string $id, mixed $value, integer $expire=0, ICacheDependency $dependency=NULL)
| ||
$id | string | the key identifying the value to be cached |
$value | mixed | the value to be cached |
$expire | integer | the number of seconds in which the cached value will expire. 0 means never expire. |
$dependency | ICacheDependency | dependency of the cached item. If the dependency changes, the item is labelled invalid. |
{return} | boolean | true if the value is successfully stored into cache, false otherwise |
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.
abstract public boolean delete(string $id)
| ||
$id | string | the key of the value to be deleted |
{return} | boolean | whether the deletion is successful |
Deletes a value with the specified key from cache
abstract public void flush()
|
Deletes all values from cache. Be careful of performing this operation if the cache is shared by multiple applications.
abstract public mixed get(string $id)
| ||
$id | string | a key identifying the cached value |
{return} | mixed | the value stored in cache, false if the value is not in the cache or expired. |
Retrieves a value from cache with a specified key.
abstract public array mget(array $ids)
| ||
$ids | array | list of keys identifying the cached values |
{return} | 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. |
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.
abstract public boolean set(string $id, mixed $value, integer $expire=0, ICacheDependency $dependency=NULL)
| ||
$id | string | the key identifying the value to be cached |
$value | mixed | the value to be cached |
$expire | integer | the number of seconds in which the cached value will expire. 0 means never expire. |
$dependency | ICacheDependency | dependency of the cached item. If the dependency changes, the item is labelled invalid. |
{return} | boolean | true if the value is successfully stored into cache, false otherwise |
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.