Phalcon\Cache\Multiple
Класс Phalcon\Cache\Multiple
Позволяет читать привязанные базовые адаптеры, записывающие несколько бэкендов
<?php use Phalcon\Cache\Frontend\Data as DataFrontend; use Phalcon\Cache\Multiple; use Phalcon\Cache\Backend\Apc as ApcCache; use Phalcon\Cache\Backend\Memcache as MemcacheCache; use Phalcon\Cache\Backend\File as FileCache; $ultraFastFrontend = new DataFrontend( [ "lifetime" => 3600, ] ); $fastFrontend = new DataFrontend( [ "lifetime" => 86400, ] ); $slowFrontend = new DataFrontend( [ "lifetime" => 604800, ] ); //Бэкэнды регистрируются от самого быстрого до более медленного $cache = new Multiple( [ new ApcCache( $ultraFastFrontend, [ "prefix" => "cache", ] ), new MemcacheCache( $fastFrontend, [ "prefix" => "cache", "host" => "localhost", "port" => "11211", ] ), new FileCache( $slowFrontend, [ "prefix" => "cache", "cacheDir" => "../app/cache/", ] ), ] ); //Сохранить, сохраняет в каждом бэкэнд $cache->save("my-key", $data);
Методы
public __construct ([Phalcon\Cache\BackendInterface $backends])
Phalcon\Cache\Multiple конструктор
public push (Phalcon\Cache\BackendInterface $backend)
Добавляет бэкэнд
public mixed get (string | int $keyName, [int $lifetime])
Возвращает кешированный контент, считывающий внутренние бэкэнды
public start (string | int $keyName, [int $lifetime])
Запускает каждый бэкэнд
public save ([string $keyName], [string $content], [int $lifetime], [boolean $stopBuffer])
Хранит кешированный контент во всех бэкэндах и останавливает интерфейс
public boolean delete (string | int $keyName)
Удаляет значение из каждого бэкэнд
public exists ([string | int $keyName], [int $lifetime])
Проверяет, существует ли кеш, по крайней мере, в одном бэкэнд
public flush ()
Сбросить все бэкэнд (ы)