PHP 클래스 lithium\storage\Cache

The Cache layer of Lithium inherits from the common Adaptable class, which provides the generic configuration setting & retrieval logic, as well as the logic required to locate & instantiate the proper adapter class. In most cases, you will configure various named cache configurations in your bootstrap process, which will then be available to you in all other parts of your application. A simple example configuration: {{{Cache::config(array( 'local' => array('adapter' => 'Apc'), 'distributed' => array( 'adapter' => 'Memcached', 'host' => '127.0.0.1:11211', ), 'default' => array('adapter' => 'File') ));}}} Each adapter provides a consistent interface for the basic cache operations of write, read, delete and clear, which can be used interchangeably between all adapters. Some adapters may provide additional methods that are not consistently available across other adapters. To make use of these, it is always possible to call: {{{Cache::adapter('named-configuration')->methodName($argument);}}} This allows a very wide range of flexibility, at the cost of portability. Some cache adapters (e.g. File) do _not_ provide the functionality for increment/decrement. Additionally, some cache adapters support multi-key operations for write, read and delete — please see the individual documentation for cache adapters and the operations that they support.
또한 보기: lithium\core\Adaptable
또한 보기: lithium\storage\cache\adapter
상속: extends lithium\core\Adaptable
파일 보기 프로젝트 열기: unionofrad/lithium 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$_adapters Libraries::locate() compatible path to adapters for this class.
$_configurations array Stores configurations for cache adapters.
$_strategies Libraries::locate() compatible path to strategies for this class.

공개 메소드들

메소드 설명
clean ( string $name ) : boolean Perform garbage collection on specified cache configuration. All invalidated cache keys - *without* honoring a configured scope - from the specified configuration are removed.
clear ( string $name ) : boolean Clears entire cache by flushing it. All cache keys - *without* honoring a configured scope - from the specified configuration are removed.
decrement ( string $name, string $key, integer $offset = 1, array $options = [] ) : integer | boolean Performs a decrement operation on specified numeric cache item from the given cache configuration.
delete ( string $name, mixed $key, array $options = [] ) : boolean Deletes using the specified cache configuration.
increment ( string $name, string $key, integer $offset = 1, array $options = [] ) : integer | boolean Performs a increment operation on specified numeric cache item from the given cache configuration.
key ( mixed $key, array $data = [] ) : string Generates the cache key.
read ( string $name, mixed $key, array $options = [] ) : mixed Reads from the specified cache configuration.
write ( string $name, mixed $key, mixed $data = null, string | integer $expiry = null, array $options = [] ) : boolean Writes to the specified cache configuration.

메소드 상세

clean() 공개 정적인 메소드

Perform garbage collection on specified cache configuration. All invalidated cache keys - *without* honoring a configured scope - from the specified configuration are removed.
public static clean ( string $name ) : boolean
$name string The cache configuration to be cleaned.
리턴 boolean `true` on successful cleaning, `false` if failed partially or entirely.

clear() 공개 정적인 메소드

Clears entire cache by flushing it. All cache keys - *without* honoring a configured scope - from the specified configuration are removed.
public static clear ( string $name ) : boolean
$name string The cache configuration to be cleared.
리턴 boolean `true` on successful clearing, `false` if failed partially or entirely.

decrement() 공개 정적인 메소드

Performs a decrement operation on specified numeric cache item from the given cache configuration.
public static decrement ( string $name, string $key, integer $offset = 1, array $options = [] ) : integer | boolean
$name string Name of the cache configuration to use.
$key string Key of numeric cache item to decrement
$offset integer Offset to decrement - defaults to 1.
$options array Options for this method. - `'conditions'`: A function or item that must return or evaluate to `true` in order to continue operation.
리턴 integer | boolean Item's new value on successful decrement, false otherwise.

delete() 공개 정적인 메소드

Can handle single- and multi-key deletes.
public static delete ( string $name, mixed $key, array $options = [] ) : boolean
$name string The cache configuration to delete from.
$key mixed Key to be deleted or an array of keys to delete.
$options array Options for the method and strategies. - `'conditions'` _mixed_: A function or item that must return or evaluate to `true` in order to continue write operation.
리턴 boolean `true` on successful cache delete, `false` otherwise. When deleting multiple items and an error occurs deleting any of the items the whole operation fails and this method will return `false`.

increment() 공개 정적인 메소드

Performs a increment operation on specified numeric cache item from the given cache configuration.
public static increment ( string $name, string $key, integer $offset = 1, array $options = [] ) : integer | boolean
$name string Name of the cache configuration to use.
$key string Key of numeric cache item to increment
$offset integer Offset to increment - defaults to 1.
$options array Options for this method. - `'conditions'`: A function or item that must return or evaluate to `true` in order to continue operation.
리턴 integer | boolean Item's new value on successful increment, false otherwise.

key() 공개 정적인 메소드

Generates the cache key.
public static key ( mixed $key, array $data = [] ) : string
$key mixed A string (or lambda/closure that evaluates to a string) that will be used as the cache key.
$data array If a lambda/closure is used as a key and requires arguments, pass them in here.
리턴 string The generated cache key.

read() 공개 정적인 메소드

Can handle single- and multi-key reads. Read-through caching can be used by passing expiry and the to-be-cached value in the write option. Following three ways to achieve this. Cache::read('default', 'foo', array( 'write' => array('+5 days' => 'bar') )); // returns 'bar' Cache::read('default', 'foo', array( 'write' => array('+5 days' => function() { return 'bar'; }) )); Cache::read('default', 'foo', array( 'write' => function() { return array('+5 days' => 'bar'); } ));
public static read ( string $name, mixed $key, array $options = [] ) : mixed
$name string Configuration to be used for reading.
$key mixed Key to uniquely identify the cache entry or an array of keys for multikey-reads.
$options array Options for the method and strategies. - `'write'`: Allows for read-through caching see description for usage. - `'strategies'` _boolean_: Indicates if strategies should be used, defaults to `true`. - `'conditions'` _mixed_: A function or item that must return or evaluate to `true` in order to continue write operation.
리턴 mixed For single-key reads will return the result if the cache key has been found otherwise returns `null`. When reading multiple keys a results array is returned mapping keys to retrieved values. Keys where the value couldn't successfully been read will not be contained in the results array.

write() 공개 정적인 메소드

Can handle single- and multi-key writes. This method has two valid syntaxes depending on if you're storing data using a single key or multiple keys as outlined below. To write data to a single-key use the following syntax. Cache::write('default', 'foo', 'bar', '+1 minute'); For multi-key writes the $data parameter's role becomes the one of the $expiry parameter. Cache::write('default', array('foo' => 'bar', ... ), '+1 minute'); These two calls are synonymical and demonstrate the two possible ways to specify the expiration time. Cache::write('default', 'foo', 'bar', '+1 minute'); Cache::write('default', 'foo', 'bar', 60);
public static write ( string $name, mixed $key, mixed $data = null, string | integer $expiry = null, array $options = [] ) : boolean
$name string Configuration to be used for writing.
$key mixed Key to uniquely identify the cache entry or an array of key/value pairs for multi-key writes mapping cache keys to the data to be cached.
$data mixed Data to be cached.
$expiry string | integer A `strtotime()` compatible cache time. Alternatively an integer denoting the seconds until the item expires (TTL). If no expiry time is set, then the default cache expiration time set with the cache adapter configuration will be used. To persist an item use `Cache::PERSIST`.
$options array Options for the method and strategies. - `'strategies'` _boolean_: Indicates if strategies should be used, defaults to `true`. - `'conditions'` _mixed_: A function or item that must return or evaluate to `true` in order to continue write operation.
리턴 boolean `true` on successful cache write, `false` otherwise. When writing multiple items and an error occurs writing any of the items the whole operation fails and this method will return `false`.

프로퍼티 상세

$_adapters 보호되어 있는 정적으로 프로퍼티

Libraries::locate() compatible path to adapters for this class.
protected static $_adapters

$_configurations 보호되어 있는 정적으로 프로퍼티

Stores configurations for cache adapters.
protected static array $_configurations
리턴 array

$_strategies 보호되어 있는 정적으로 프로퍼티

Libraries::locate() compatible path to strategies for this class.
protected static $_strategies