MemcachedAdapter
class MemcachedAdapter extends AbstractAdapter
Traits
| MemcachedTrait | |
| AbstractTrait | |
| LoggerAwareTrait |
Methods
| hasItem($key) {@inheritdoc} | from AbstractTrait | |
| clear() {@inheritdoc} | from AbstractTrait | |
| deleteItem($key) {@inheritdoc} | from AbstractTrait | |
| deleteItems(array $keys) {@inheritdoc} | from AbstractTrait | |
| bool | enableVersioning(bool $enable = true) Enables/disables versioning of items. | from AbstractTrait |
| static | handleUnserializeCallback($class) | from AbstractTrait |
| static AdapterInterface | createSystemCache(string $namespace, int $defaultLifetime, string $version, string $directory, LoggerInterface $logger = null) | from AbstractAdapter |
| static Memcached | createConnection(array[]|string|string[] $servers, array $options = array()) Creates a Memcached instance. | from MemcachedTrait |
| CacheItem | getItem($key) {@inheritdoc} | from AbstractAdapter |
| getItems(array $keys = array()) {@inheritdoc} | from AbstractAdapter | |
| save(CacheItemInterface $item) {@inheritdoc} | from AbstractAdapter | |
| saveDeferred(CacheItemInterface $item) {@inheritdoc} | from AbstractAdapter | |
| commit() {@inheritdoc} | from AbstractAdapter | |
| __destruct() | from AbstractAdapter | |
| static | isSupported() | from MemcachedTrait |
| __construct(Memcached $client, $namespace = '', $defaultLifetime) Using a MemcachedAdapter with a TagAwareAdapter for storing tags is discouraged. |
Details
hasItem($key)
{@inheritdoc}
Parameters
| $key |
clear()
{@inheritdoc}
deleteItem($key)
{@inheritdoc}
Parameters
| $key |
deleteItems(array $keys)
{@inheritdoc}
Parameters
| array | $keys |
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 |
static handleUnserializeCallback($class)
Parameters
| $class |
static AdapterInterface createSystemCache(string $namespace, int $defaultLifetime, string $version, string $directory, LoggerInterface $logger = null)
Parameters
| string | $namespace | |
| int | $defaultLifetime | |
| string | $version | |
| string | $directory | |
| LoggerInterface | $logger |
Return Value
| AdapterInterface |
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
| ErrorEception | When invalid options or servers are provided |
CacheItem getItem($key)
{@inheritdoc}
Parameters
| $key |
Return Value
| CacheItem |
getItems(array $keys = array())
{@inheritdoc}
return \Traversable|CacheItem[]
Parameters
| array | $keys |
save(CacheItemInterface $item)
{@inheritdoc}
Parameters
| CacheItemInterface | $item |
saveDeferred(CacheItemInterface $item)
{@inheritdoc}
Parameters
| CacheItemInterface | $item |
commit()
{@inheritdoc}
__destruct()
static isSupported()
__construct(Memcached $client, $namespace = '', $defaultLifetime)
Using a MemcachedAdapter with a TagAwareAdapter for storing tags is discouraged.
Using a RedisAdapter is recommended instead. If you cannot do otherwise, be aware that: - the Memcached::OPTBINARYPROTOCOL must be enabled (that's the default when using MemcachedAdapter::createConnection()); - tags eviction by Memcached's LRU algorithm will break by-tags invalidation; your Memcached memory should be large enough to never trigger LRU.
Using a MemcachedAdapter as a pure items store is fine.
Parameters
| Memcached | $client | |
| $namespace | ||
| $defaultLifetime |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.3/Symfony/Component/Cache/Adapter/MemcachedAdapter.html