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 класс
    • IOCore класс
    • Route и работа с ними
    • Class и работа с ними
    • Api model и работа с ними
    • Template и работа с ними
    • Мультиязычность и словарь фраз
    • Bin скрипты и работа с ними
    • Cron скрипты и работа с ними
    • $ioSession и работа с сессией
    • $ioHash и работа с кешем
    • $iodb и работа с базой данных
  • Frontend

    • Twig шаблонизатор и работа с ним
    • Twig функции
    • Twig фильтры
    • Twig контекст
    • Настройка NPM
    • Сборка Frontend составляющей
    • Обращение к Api через JS

IO v6. $ioHash и работа с кешем

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

Описание

$ioHash - глобальная переменная-объект для управления кешированными данными. Данные кеша хранятся в базе данных MySQL (в таблице hash).

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

get()

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

get(string $key): mixed
  • $key: (string) название ключа получаемого элемента (обязательный).

Пример:

global $ioHash;
$data = $ioHash->get('data.'.$ioSession->user->login);

set()

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

set(string $key, mixed $value, int $expire = 600): bool
  • $key: (string) название ключа, для обращения к элементу (обязательный).
  • $value: (mixed) сохраняемые данные (обязательный).
  • $expire: (integer) срок хранения данных в секундах (по умолчанию 10 минут, т.е. 600 секунд) (необязательный).

Пример:

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

delete()

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

delete(string $key): bool
  • $key: (string) название ключа удаляемого элемента (обязательный).

Пример:

global $ioHash;
$ioHash->delete('data.'.$ioSession->user->login);

clear()

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

clear(): bool

Пример:

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