BMC IO DocsBMC IO Docs
IO v6
IO v7
Notes
Docs
IO v6
IO v7
Notes
Docs
  • IO Framework v7

    • О фреймворке
    • Что изменилось в 7 версии
    • Структура
    • Доступ к участкам проекта
    • Разворачивание нового проекта
  • Backend

    • Настройки проекта Conf.php
    • Настройки модуля Module.php
    • Настройки composer
    • Функции фреймворка
    • Глобальные переменные
    • Константы фреймворка
    • Event класс
    • Core класс
    • Route и работа с ними
    • Request и работа с ними
    • Middleware и работа с ними
    • Class и работа с ними
    • Api model и работа с ними
    • Template и работа с ними
    • Мультиязычность и словарь фраз
    • Bin скрипты и работа с ними
    • Cron скрипты и работа с ними
    • $ioSession и работа с сессией
    • $ioHash и работа с кешем
    • $ioXCache и работа с кешем
    • $iodb и работа с базой данных
  • Frontend

    • Twig шаблонизатор и работа с ним
    • Twig функции
    • Twig фильтры
    • Twig контекст
    • Настройка NPM
    • Сборка Frontend составляющей
    • Обращение к Api через JS
    • Хранилище (store)
    • Навигация в хосте
    • Навигация в микрофронтенде
    • Параметры микрофронтенда
    • Проверка полномочий

IO v7. $ioXCache и работа с кешем

  • Описание
  • Функции объекта
    • get()
    • set()
    • delete()
    • clear()

Описание

$ioXCache - глобальная переменная-объект для управления кешированными данными. Данные кеша хранятся в memcached.

Функции объекта

get()

Чтение данных из кеша по ключу.

get(
  string $key
): mixed

| Аргумент функции | Тип | Описание | Обязательный | | --- | --- | --- | --- | --- | | $key | string | Название ключа получаемого элемента. | Да |

Пример:

global $ioXCache;
$data = $ioXCache->get('data.'.$ioSession->getUserLogin());

set()

Запись данных в кеш.

set(
  string $key,
  mixed $value,
  int $expire = 600
): bool
Аргумент функцииТипОписаниеЗначение по умолчаниюОбязательный
$keystringНазвание ключа, для обращения к элементу.Да
$valuemixedСохраняемые данные.Да
$expireintСрок хранения данных в секундах.600 (10 минут)Нет

Пример:

global $ioXCache;
$data = [
    'sname' => 'Фамилиев',
    'fname' => 'Имий',
    'lname' => 'Отчествович',
];
// на 1 сутки
$ioXCache->set('data.'.$ioSession->getUserLogin(), $data, 1 * 24 * 60 * 60);
// или на 10 минут
$ioXCache->set('data.'.$ioSession->getUserLogin(), $data);

delete()

Принудительное удаление данных из кеша по ключу.

delete(
  string $key
): bool

| Аргумент функции | Тип | Описание | Обязательный | | --- | --- | --- | --- | --- | | $key | string | Название ключа удаляемого элемента. | Да |

Пример:

global $ioXCache;
$ioXCache->delete('data.'.$ioSession->getUserLogin());

clear()

Очистка кеша от "устаревших / просроченных" данных. Функция выполняется автоматически и не требует запуска.

clear(): bool

Пример:

global $ioXCache;
$ioXCache->clear();
Prev
$ioHash и работа с кешем
Next
$iodb и работа с базой данных