Класс Phalcon\Cache\Frontend\Data

Реализует Phalcon\Cache\FrontendInterface

Source on GitHub

Позволяет кэшировать собственные данные PHP в сериализованной форме

<?php

use Phalcon\Cache\Backend\File;
use Phalcon\Cache\Frontend\Data;

// Кэш файлов в течение 2 дней через интерфейс данных
$frontCache = new Data(
    [
        "lifetime" => 172800,
    ]
);

// Создать компонент, который будет кэшировать "Data" в 'File' бэкэнд
// Установите каталог файла кэша-важно сохранить '/' в конце
// значения для папки
$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);
}

// Use $robots :)
foreach ($robots as $robot) {
    echo $robot->name, "\n";
}

Методы

public __construct ([array $frontendOptions])

Phalcon\Cache\Frontend\Data конструктор

public getLifetime ()

Возвращает время жизни кэша

public isBuffering ()

Проверяет, буферизует ли интерфейс вывод

public start ()

Запускает интерфейс вывода. На самом деле, ничего не делает

public string getContent ()

Возвращает кэшированное содержимое вывода

public stop ()

Останавливает интерфейс вывода

public beforeStore (mixed $data)

Сериализует данные перед их хранением

public afterRetrieve (mixed $data)

Ансериализует данные после извлечения