(PECL memcached >= 0.1.0)
Memcached::setByKey — Сохраняет элемент на конкретном сервере
$server_key,$key,$value,$expiration = 0
Метод Memcached::setByKey() функционально эквивалентен
методу Memcached::set(), за исключением того, что произвольный
ключ server_key может использоваться для сопоставления
ключа key с конкретным сервером. Это полезно, когда требуется держать
несколько связанных значений на конкретном сервере.
server_keyКлюч, который идентифицирует сервер, на котором хранится значение. Вместо хеширования фактического ключа элемента хешируется ключ сервера, когда решается, с каким сервером memcached взаимодействовать. Это разрешает группировать связанные элементы вместе на одном сервере, что повышает эффективность групповых операций.
keyКлюч, под которым сохраняется значение.
valueСохраняемое значение.
expirationВремя хранения объекта, по умолчанию равно 0. Подробнее об этом рассказывает раздел «Время хранения объекта».
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
Вызывайте метод
Memcached::getResultCode(), если требуется.
Пример #1 Пример использования метода Memcached::setByKey()
<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
/* Хранение блоков IP-адресов на конкретном сервере */
$m->setByKey('api-cache', 'block-ip:169.254.253.252', 1);
$m->setByKey('api-cache', 'block-ip:169.127.127.202', 1);
?>