Class Phalcon\Cache\Backend\Memcached

extends abstract class Phalcon\Cache\Backend

implements Phalcon\Cache\BackendInterface, Phalcon\Di\InjectionAwareInterface, Phalcon\Events\EventsAwareInterface

Source on GitHub

Allows to cache output fragments, PHP data or raw data to a memcached backend This adapter uses the special memcached key “_PHCM” to store all the keys internally used by the adapter


 // Cache data for 2 days
 $frontCache = new Phalcon\Cache\Frontend\Data(array(
    "lifetime" => 172800

 //Create the Cache setting memcached connection options
 $cache = new Phalcon\Cache\Backend\Memcached($frontCache, array(
     'servers' => array(
         array('host' => 'localhost',
               'port' => 11211,
               'weight' => 1),
     'client' => array(
         Memcached::OPT_HASH => Memcached::HASH_MD5,
         Memcached::OPT_PREFIX_KEY => 'prefix.',

 //Cache arbitrary data
 $cache->save('my-data', array(1, 2, 3, 4, 5));

 //Get data
 $data = $cache->get('my-data');


public __construct (Phalcon\Cache\FrontendInterface $frontend, [array $options])

Phalcon\Cache\Backend\Memcached constructor

protected _connect ()

Create internal connection to memcached

public mixed get (string $keyName, [long $lifetime])

Returns a cached content

public save ([string $keyName], [unknown $value], [long $lifetime], [boolean $stopBuffer])

Stores cached content into the Memcached backend and stops the frontend

public boolean delete (string $keyName)

Deletes a value from the cache by its key

public array queryKeys ([string $prefix])

Query the existing cached keys

public boolean exists (string $keyName)

Checks if cache exists and it hasn’t expired

public mixed increment (string $keyName, [long $value])

Increment of a given key, by number $value

public mixed decrement (string $keyName, [long $value])

Decrement of a given key, by number $value

public boolean flush ()

Immediately invalidates all existing items.

public getTrackingKey ()


public setTrackingKey (unknown $key)


public mixed start (int|string $keyName, [long $lifetime], [unknown $nobuffer]) inherited from Phalcon\Cache\Backend

Starts a cache. The $keyname allows to identify the created fragment

public stop ([boolean $stopBuffer]) inherited from Phalcon\Cache\Backend

Stops the frontend without store any cached content

public mixed getFrontend () inherited from Phalcon\Cache\Backend

Returns front-end instance adapter related to the back-end

public array getOptions () inherited from Phalcon\Cache\Backend

Returns the backend options

public boolean isFresh () inherited from Phalcon\Cache\Backend

Checks whether the last cache is fresh or cached

public boolean isStarted () inherited from Phalcon\Cache\Backend

Checks whether the cache has starting buffering or not

public int getLifetime () inherited from Phalcon\Cache\Backend

Gets the last lifetime set

public Phalcon\Cache\Backend setPrefix (string $prefix) inherited from Phalcon\Cache\Backend

Sets prefix

public string getPrefix () inherited from Phalcon\Cache\Backend

Gets prefix

public setDI (Phalcon\DiInterface $dependencyInjector) inherited from Phalcon\Di\Injectable

Sets the dependency injector

public Phalcon\DiInterface getDI ([unknown $error], [unknown $notUseDefault]) inherited from Phalcon\Di\Injectable

Returns the internal dependency injector

public setEventsManager (Phalcon\Events\ManagerInterface $eventsManager) inherited from Phalcon\Di\Injectable

Sets the event manager

public Phalcon\Events\ManagerInterface getEventsManager () inherited from Phalcon\Di\Injectable

Returns the internal event manager

public boolean fireEvent (string $eventName, [mixed $data], [unknown $cancelable]) inherited from Phalcon\Di\Injectable

Fires an event, implicitly calls behaviors and listeners in the events manager are notified

public mixed fireEventCancel (string $eventName, [mixed $data], [unknown $cancelable]) inherited from Phalcon\Di\Injectable

Fires an event, can stop the event by returning to the false

public boolean hasService (string $name) inherited from Phalcon\Di\Injectable

Check whether the DI contains a service by a name

public Phalcon\Di\ServiceInterface setService (unknown $name) inherited from Phalcon\Di\Injectable

Sets a service from the DI

public object|null getService (unknown $name) inherited from Phalcon\Di\Injectable

Obtains a service from the DI

public mixed getResolveService (string $name, [array $args], [unknown $noerror], [unknown $noshared]) inherited from Phalcon\Di\Injectable

Resolves the service based on its configuration

public attachEvent (string $eventType, Closure $callback) inherited from Phalcon\Di\Injectable

Attach a listener to the events

public __get (unknown $property) inherited from Phalcon\Di\Injectable

Magic method __get

public __sleep () inherited from Phalcon\Di\Injectable


public __debugInfo () inherited from Phalcon\Di\Injectable