TransientBackendInterface extends BackendInterface

A contract for a cache backends which store variables in volatile memory and as such support receiving any variable type to store.

Note: respect for this contract is up to each individual frontend. The contract can be respected for a small performance boost, but the result is marginal except for cases with huge serialized data sets.

Respected by the VariableFrontend which checks if the backend has this interface, in which case it allows the backend to store the value directly without serializing it to a string, and does not attempt to unserialize the string on every get() request.

Table of Contents

Methods

collectGarbage()  : mixed
Does garbage collection
flush()  : mixed
Removes all cache entries of this cache.
get()  : mixed
Loads data from the cache.
has()  : bool
Checks if a cache entry with the specified identifier exists.
remove()  : bool
Removes all cache entries matching the specified identifier.
set()  : mixed
Saves data in the cache.
setCache()  : mixed
Sets a reference to the cache frontend which uses this backend

Methods

collectGarbage()

Does garbage collection

public collectGarbage() : mixed

flush()

Removes all cache entries of this cache.

public flush() : mixed

get()

Loads data from the cache.

public get(string $entryIdentifier) : mixed
Parameters
$entryIdentifier : string

An identifier which describes the cache entry to load

Return values
mixed

The cache entry's content as a string or FALSE if the cache entry could not be loaded

has()

Checks if a cache entry with the specified identifier exists.

public has(string $entryIdentifier) : bool
Parameters
$entryIdentifier : string

An identifier specifying the cache entry

Return values
bool

TRUE if such an entry exists, FALSE if not

remove()

Removes all cache entries matching the specified identifier.

public remove(string $entryIdentifier) : bool

Usually this only affects one entry but if - for what reason ever - old entries for the identifier still exist, they are removed as well.

Parameters
$entryIdentifier : string

Specifies the cache entry to remove

Return values
bool

TRUE if (at least) an entry could be removed or FALSE if no entry was found

set()

Saves data in the cache.

public set(string $entryIdentifier, string $data[, array<string|int, mixed> $tags = [] ][, int $lifetime = null ]) : mixed
Parameters
$entryIdentifier : string

An identifier for this specific cache entry

$data : string

The data to be stored

$tags : array<string|int, mixed> = []

Tags to associate with this cache entry. If the backend does not support tags, this option can be ignored.

$lifetime : int = null

Lifetime of this cache entry in seconds. If NULL is specified, the default lifetime is used. "0" means unlimited lifetime.

Tags
throws
Exception

if no cache frontend has been set.

throws
InvalidDataException

if the data is not a string


        
On this page

Search results