PHP 클래스 Neos\Cache\Backend\ApcBackend

This backend uses the following types of keys: - entry_xxx the actual cache entry with the data to be stored - tag_xxx xxx is tag name, value is array of associated identifiers identifier. This is "forward" tag index. It is mainly used for obtaining content by tag (get identifier by tag -> get content by identifier) - ident_xxx xxx is identifier, value is array of associated tags. This is "reverse" tag index. It provides quick access for all tags associated with this identifier and used when removing the identifier - tagIndex Value is a List of all tags (array) Each key is prepended with a prefix. By default prefix consists from two parts separated by underscore character and ends in yet another underscore character: - "Flow" - MD5 of path to Flow and the current context (Production, Development, ...) This prefix makes sure that keys from the different installations do not conflict.
상속: extends AbstractBackend, implements Neos\Cache\Backend\TaggableBackendInterface, implements IterableBackendInterface, implements Neos\Cache\Backend\PhpCapableBackendInterface, use trait RequireOnceFromValueTrait
파일 보기 프로젝트 열기: neos/flow-development-collection 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$cacheEntriesIterator ApcIterator
$identifierPrefix string A prefix to seperate stored data from other data possible stored in the APC

공개 메소드들

메소드 설명
__construct ( EnvironmentConfiguration $environmentConfiguration, array $options )
collectGarbage ( ) : void Does nothing, as APC does GC itself
current ( ) : mixed Returns the data of the current cache entry pointed to by the cache entry iterator.
findIdentifiersByTag ( string $tag ) : array Finds and returns all cache entry identifiers which are tagged by the specified tag.
flush ( ) : void Removes all cache entries of this cache.
flushByTag ( string $tag ) : integer Removes all cache entries of this cache which are tagged by the specified tag.
get ( string $entryIdentifier ) : mixed Loads data from the cache.
getPrefixedIdentifier ( string $entryIdentifier ) : string Returns the internally used, prefixed entry identifier for the given public entry identifier.
has ( string $entryIdentifier ) : boolean Checks if a cache entry with the specified identifier exists.
key ( ) : string Returns the identifier of the current cache entry pointed to by the cache entry iterator.
next ( ) : void Move forward to the next cache entry
remove ( string $entryIdentifier ) : boolean Removes all cache entries matching the specified identifier.
rewind ( ) : void Rewinds the cache entry iterator to the first element
set ( string $entryIdentifier, string $data, array $tags = [], integer $lifetime = null ) : void Saves data in the cache.
setCache ( Neos\Cache\Frontend\FrontendInterface $cache ) : void Initializes the identifier prefix when setting the cache.
valid ( ) : boolean Checks if the current position of the cache entry iterator is valid

보호된 메소드들

메소드 설명
addIdentifierToTags ( string $entryIdentifier, array $tags ) : void Associates the identifier with the given tags
findTagsByIdentifier ( string $identifier ) : array Finds all tags for the given identifier. This function uses reverse tag index to search for tags.
removeIdentifierFromAllTags ( string $entryIdentifier ) : void Removes association of the identifier with the given tags

메소드 상세

__construct() 공개 메소드

public __construct ( EnvironmentConfiguration $environmentConfiguration, array $options )
$environmentConfiguration Neos\Cache\EnvironmentConfiguration
$options array

addIdentifierToTags() 보호된 메소드

Associates the identifier with the given tags
protected addIdentifierToTags ( string $entryIdentifier, array $tags ) : void
$entryIdentifier string
$tags array
리턴 void

collectGarbage() 공개 메소드

Does nothing, as APC does GC itself
public collectGarbage ( ) : void
리턴 void

current() 공개 메소드

Returns the data of the current cache entry pointed to by the cache entry iterator.
public current ( ) : mixed
리턴 mixed

findIdentifiersByTag() 공개 메소드

Finds and returns all cache entry identifiers which are tagged by the specified tag.
public findIdentifiersByTag ( string $tag ) : array
$tag string The tag to search for
리턴 array An array with identifiers of all matching entries. An empty array if no entries matched

findTagsByIdentifier() 보호된 메소드

Finds all tags for the given identifier. This function uses reverse tag index to search for tags.
protected findTagsByIdentifier ( string $identifier ) : array
$identifier string Identifier to find tags by
리턴 array Array with tags

flush() 공개 메소드

Removes all cache entries of this cache.
public flush ( ) : void
리턴 void

flushByTag() 공개 메소드

Removes all cache entries of this cache which are tagged by the specified tag.
public flushByTag ( string $tag ) : integer
$tag string The tag the entries must have
리턴 integer The number of entries which have been affected by this flush

get() 공개 메소드

Loads data from the cache.
public get ( string $entryIdentifier ) : mixed
$entryIdentifier string An identifier which describes the cache entry to load
리턴 mixed The cache entry's content as a string or FALSE if the cache entry could not be loaded

getPrefixedIdentifier() 공개 메소드

While Flow applications will mostly refer to the simple entry identifier, it may be necessary to know the actual identifier used by the cache backend in order to share cache entries with other applications. This method allows for retrieving it.
public getPrefixedIdentifier ( string $entryIdentifier ) : string
$entryIdentifier string The short entry identifier, for example "NumberOfPostedArticles"
리턴 string The prefixed identifier, for example "Flow694a5c7a43a4_NumberOfPostedArticles"

has() 공개 메소드

Checks if a cache entry with the specified identifier exists.
public has ( string $entryIdentifier ) : boolean
$entryIdentifier string An identifier specifying the cache entry
리턴 boolean TRUE if such an entry exists, FALSE if not

key() 공개 메소드

Returns the identifier of the current cache entry pointed to by the cache entry iterator.
public key ( ) : string
리턴 string

next() 공개 메소드

Move forward to the next cache entry
public next ( ) : void
리턴 void

remove() 공개 메소드

Usually this only affects one entry but if - for what reason ever - old entries for the identifier still exist, they are removed as well.
public remove ( string $entryIdentifier ) : boolean
$entryIdentifier string Specifies the cache entry to remove
리턴 boolean TRUE if (at least) an entry could be removed or FALSE if no entry was found

removeIdentifierFromAllTags() 보호된 메소드

Removes association of the identifier with the given tags
protected removeIdentifierFromAllTags ( string $entryIdentifier ) : void
$entryIdentifier string
리턴 void

rewind() 공개 메소드

Rewinds the cache entry iterator to the first element
public rewind ( ) : void
리턴 void

set() 공개 메소드

Saves data in the cache.
public set ( string $entryIdentifier, string $data, array $tags = [], integer $lifetime = null ) : void
$entryIdentifier string An identifier for this specific cache entry
$data string The data to be stored
$tags array Tags to associate with this cache entry
$lifetime integer Lifetime of this cache entry in seconds. If NULL is specified, the default lifetime is used. "0" means unlimited liftime.
리턴 void

setCache() 공개 메소드

Initializes the identifier prefix when setting the cache.
public setCache ( Neos\Cache\Frontend\FrontendInterface $cache ) : void
$cache Neos\Cache\Frontend\FrontendInterface
리턴 void

valid() 공개 메소드

Checks if the current position of the cache entry iterator is valid
public valid ( ) : boolean
리턴 boolean TRUE if the current position is valid, otherwise FALSE

프로퍼티 상세

$cacheEntriesIterator 보호되어 있는 프로퍼티

protected ApcIterator $cacheEntriesIterator
리턴 ApcIterator

$identifierPrefix 보호되어 있는 프로퍼티

A prefix to seperate stored data from other data possible stored in the APC
protected string $identifierPrefix
리턴 string