class MemcachedCache extends AbstractCache

Traits

LoggerAwareTrait

Properties

protected $maxIdLength

Methods

array|Traversable
doFetch(array $ids)

Fetches several cache items.

bool
doHave(string $id)

Confirms if the cache contains specified cache item.

bool
doClear(string $namespace)

Deletes all items in the pool.

bool
doDelete(array $ids)

Removes multiple items from the pool.

array|bool
doSave(array $values, int $lifetime)

Persists several cache items immediately.

hasItem($key)

{@inheritdoc}

clear()

{@inheritdoc}

deleteItem($key)

{@inheritdoc}

deleteItems(array $keys)

{@inheritdoc}

bool
enableVersioning(bool $enable = true)

Enables/disables versioning of items.

reset()

{@inheritdoc}

static mixed
unserialize(string $value)

Like the native unserialize() function but throws an exception if anything goes wrong.

static 
handleUnserializeCallback($class)

No description

__construct(Memcached $client, string $namespace = '', int $defaultLifetime = 0)

No description

get($key, $default = null)

{@inheritdoc}

set($key, $value, $ttl = null)

{@inheritdoc}

getMultiple($keys, $default = null)

{@inheritdoc}

setMultiple($values, $ttl = null)

{@inheritdoc}

deleteMultiple($keys)

{@inheritdoc}

static 
isSupported()

No description

static Memcached
createConnection(array[]|string|string[] $servers, array $options = array())

Creates a Memcached instance.

Details

in AbstractTrait at line 43
abstract protected array|Traversable doFetch(array $ids)

Fetches several cache items.

Parameters

array $ids The cache identifiers to fetch

Return Value

array|Traversable The corresponding values found in the cache

in AbstractTrait at line 52
abstract protected bool doHave(string $id)

Confirms if the cache contains specified cache item.

Parameters

string $id The identifier for which to check existence

Return Value

bool True if item exists in the cache, false otherwise

in AbstractTrait at line 61
abstract protected bool doClear(string $namespace)

Deletes all items in the pool.

Parameters

string $namespace The prefix used for all identifiers managed by this pool

Return Value

bool True if the pool was successfully cleared, false otherwise

in AbstractTrait at line 70
abstract protected bool doDelete(array $ids)

Removes multiple items from the pool.

Parameters

array $ids An array of identifiers that should be removed from the pool

Return Value

bool True if the items were successfully removed, false otherwise

in AbstractTrait at line 80
abstract protected array|bool doSave(array $values, int $lifetime)

Persists several cache items immediately.

Parameters

array $values The values to cache, indexed by their cache identifier
int $lifetime The lifetime of the cached values, 0 for persisting until manual cleaning

Return Value

array|bool The identifiers that failed to be cached or a boolean stating if caching succeeded or not

in AbstractTrait at line 85
hasItem($key)

{@inheritdoc}

Parameters

$key

in AbstractTrait at line 105
clear()

{@inheritdoc}

in AbstractTrait at line 132
deleteItem($key)

{@inheritdoc}

Parameters

$key

in AbstractTrait at line 140
deleteItems(array $keys)

{@inheritdoc}

Parameters

array $keys

in AbstractTrait at line 186
bool enableVersioning(bool $enable = true)

Enables/disables versioning of items.

When versioning is enabled, clearing the cache is atomic and doesn't require listing existing keys to proceed, but old keys may need garbage collection and extra round-trips to the back-end are required.

Calling this method also clears the memoized namespace version and thus forces a resynchonization of it.

Parameters

bool $enable

Return Value

bool the previous state of versioning

in AbstractTrait at line 198
reset()

{@inheritdoc}

in AbstractTrait at line 215
static protected mixed unserialize(string $value)

Like the native unserialize() function but throws an exception if anything goes wrong.

Parameters

string $value

Return Value

mixed

Exceptions

Exception

in AbstractTrait at line 264
static handleUnserializeCallback($class)

Parameters

$class

at line 22
__construct(Memcached $client, string $namespace = '', int $defaultLifetime = 0)

Parameters

Memcached $client
string $namespace
int $defaultLifetime

in AbstractCache at line 46
get($key, $default = null)

{@inheritdoc}

Parameters

$key
$default

in AbstractCache at line 64
set($key, $value, $ttl = null)

{@inheritdoc}

Parameters

$key
$value
$ttl

in AbstractCache at line 74
getMultiple($keys, $default = null)

{@inheritdoc}

Parameters

$keys
$default

in AbstractCache at line 100
setMultiple($values, $ttl = null)

{@inheritdoc}

Parameters

$values
$ttl

in AbstractCache at line 136
deleteMultiple($keys)

{@inheritdoc}

Parameters

$keys

in MemcachedTrait at line 35
static isSupported()

in MemcachedTrait at line 76
static Memcached createConnection(array[]|string|string[] $servers, array $options = array())

Creates a Memcached instance.

By default, the binary protocol, no block, and libketama compatible options are enabled.

Examples for servers: - 'memcached://user:pass@localhost?weight=33' - array(array('localhost', 11211, 33))

Parameters

array[]|string|string[] $servers An array of servers, a DSN, or an array of DSNs
array $options An array of options

Return Value

Memcached

Exceptions

ErrorException When invalid options or servers are provided