Allows to read to chained backend adapters writing to multiple backends
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | use Phalcon\Cache\Frontend\Data as DataFrontend, Phalcon\Cache\Multiple, Phalcon\Cache\Backend\Apc as ApcCache, Phalcon\Cache\Backend\Memcache as MemcacheCache, Phalcon\Cache\Backend\File as FileCache; $ultraFastFrontend = new DataFrontend( array ( "lifetime" => 3600 )); $fastFrontend = new DataFrontend( array ( "lifetime" => 86400 )); $slowFrontend = new DataFrontend( array ( "lifetime" => 604800 )); //Backends are registered from the fastest to the slower $cache = new Multiple( array ( new ApcCache( $ultraFastFrontend , array ( "prefix" => 'cache' , )), new MemcacheCache( $fastFrontend , array ( "prefix" => 'cache' , "host" => "localhost" , "port" => "11211" )), new FileCache( $slowFrontend , array ( "prefix" => 'cache' , "cacheDir" => "../app/cache/" )) )); //Save, saves in every backend $cache ->save( 'my-key' , $data ); |
Methods
public __construct ([Phalcon\Cache\BackendInterface[] $backends])
Phalcon\Cache\Multiple constructor
public push (Phalcon\Cache\BackendInterface $backend)
Adds a backend
public mixed get (string | int $keyName, [long $lifetime])
Returns a cached content reading the internal backends
public start (string | int $keyName, [long $lifetime])
Starts every backend
public save ([string $keyName], [string $content], [long $lifetime], [boolean $stopBuffer])
Stores cached content into all backends and stops the frontend
public boolean delete (string | int $keyName)
Deletes a value from each backend
public boolean exists ([string | int $keyName], [long $lifetime])
Checks if cache exists in at least one backend
public flush ()
Flush all backend(s)
Please login to continue.