Phalcon\Cache\Frontend\Msgpack
Класс Phalcon\Cache\Frontend\Msgpack
расширяет класс Phalcon\Cache\Frontend\Data
Реализует Phalcon\Cache\FrontendInterface
Позволяет кэшировать собственные данные PHP в сериализованной форме с использованием расширения msgpack. Этот адаптер использует внешний интерфейс Msgpack для хранения кэшированного содержимого и требует расширения msgpack.
<?php use Phalcon\Cache\Backend\File; use Phalcon\Cache\Frontend\Msgpack; // Кэш файлов в течение 2 дней с использованием интерфейса Msgpack $frontCache = new Msgpack( [ "lifetime" => 172800, ] ); // Создайте компонент, который будет кэшировать «Msgpack» в бэкэнде «Файл» // Задайте каталог файлов кеша - важно сохранить «/» // в конце значения для папки $cache = new File( $frontCache, [ "cacheDir" => "../app/cache/", ] ); $cacheKey = "robots_order_id.cache"; // Попробуйте получить кэшированные записи $robots = $cache->get($cacheKey); if ($robots === null) { // $robots является недействительным из-за истечения срока действия кэша или если данных не существует // Вызвать базу данных и заполнить переменную $robots = Robots::find( [ "order" => "id", ] ); // Сохраните её в кэше $cache->save($cacheKey, $robots); } // Используйте $robots foreach ($robots as $robot) { echo $robot->name, "\n"; }
Методы
public __construct ([array $frontendOptions])
Phalcon\Cache\Frontend\Msgpack конструктор
public getLifetime ()
Возвращает время жизни кэша
public isBuffering ()
Проверяет, буферизует ли интерфейс вывод
public start ()
Запускает вывод интерфейса. На самом деле, ничего не делает
public getContent ()
Возвращает кэшированное содержимое вывода
public stop ()
Останавливает вывод интерфейса
public beforeStore (mixed $data)
Сериализует данные перед их хранением
public afterRetrieve (mixed $data)
Ансериализует данные после извлечения