Сохраняет элемент на конкретном сервере

# Memcached::setByKey

(PECL memcached >= 0.1.0)

Memcached::setByKey — Сохраняет элемент на конкретном сервере

### Описание

public function Memcached::setByKey(
string `$server_key`,
string `$key`,
mixed `$value`,
int `$expiration` = 0
): bool

Метод 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);

    ?>

### Смотрите также

- Memcached::set() - Сохраняет запись

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open