(PECL wincache >= 1.1.0)
wincache_ucache_set — Добавляет или перезаписывает переменную в пользовательский кеш
Функция добавляет переменную в пользовательский кеш. Функция заменит переменную, если кеш уже содержит переменную с таким ключом. Добавленная или обновлённая переменная остаётся в пользовательском кеше до истечения срока действия или пока переменную не удалят функцией wincache_ucache_delete() или wincache_ucache_clear().
key
Параметр key — имя переменной, с которым значение сохраняется в кеше.
Функция перезапишет предыдущее значение новым, если переменная с ключом key уже содержится в кеше.
Параметр key чувствителен к регистру.
Параметр key также принимает массив пар «имя => значение», где имя — ключ значения.
Массив передают для добавления в кеш набора значений за одну операцию и чтобы исключить состояние гонки.
value
Значение переменной, которую требуется сохранить. Параметр value поддерживает все типы данных, кроме ресурсов,
таких как дескрипторы файлов.
Параметр игнорируется, если первым аргументом является массив. Общее руководство - передать null в качестве value
при использовании массива key.
Функция сериализует объекты, если в параметр value передали объект или массив объектов.
Подробнее о сериализации объектов рассказывает описание магического метода __sleep().
valuesАссоциативный массив ключей и значений.
ttl
Время в секундах, в течение которого переменная хранится в кеше. После истечения времени ttl
переменная удаляется из кеша.
Значение по умолчанию — 0, поэтому переменная останется в кеше бессрочно,
или пока переменную не удалят функцией wincache_ucache_delete() или wincache_ucache_clear().
При передаче в параметр key строки функция возвращает true, если завершилась успешно, или false, если возникла ошибка.
При передаче в параметр key массива функция возвращает:
false, если ни одну пару «имя => значение» из массива невозможно установить;
Пример #1
Пример добавления или перезаписи переменной в пользовательском кеше по строковому ключу key
функцией wincache_ucache_set()
<?php
$bar = 'BAR';
var_dump(wincache_ucache_set('foo', $bar));
var_dump(wincache_ucache_get('foo'));
$bar1 = 'BAR1';
var_dump(wincache_ucache_set('foo', $bar1));
var_dump(wincache_ucache_get('foo'));Результат выполнения приведённого примера:
bool(true) string(3) "BAR" bool(true) string(3) "BAR1"
Пример #2
Пример добавления или перезаписи переменной в пользовательском кеше функцией wincache_ucache_set()
с передачей в параметре key массива
<?php
$colors_array = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8');
var_dump(wincache_ucache_set($colors_array));
var_dump(wincache_ucache_set($colors_array));
var_dump(wincache_ucache_get('Blue'));
?>Результат выполнения приведённого примера:
array(0) {}
array(0) {}
string(1) "6"