Memcached::decrement

(PECL memcached >= 0.1.0)

Memcached::decrementУменьшает числовое значение записи

Описание

public int Memcached::decrement ( string $key [, int $offset = 1 [, int $initial_value = 0 [, int $expiry = 0 ]]] )

Memcached::decrement() уменьшает числовое значение записи на величину, указанную в offset. Если значение записи не является числовым, то будет возвращена ошибка. Если функция уменьшит значение записи меньше нуля, будет установлено нулевое значение. Memcached::decrement() установит записи значение параметра initial_value если переданного ключа не существует.

Список параметров

key

Ключ уменьшаемой записи.

offset

Величина на которую уменьшается значение записи.

initial_value

Инициирующее значение, устанавливаемое записи, если ключа не существует.

expiry

Время, когда срок действия записи истекает.

Возвращаемые значения

Возвращает новое значение записи в случае успеха или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Пример использования Memcached::decrement()

<?php
$m 
= new Memcached();
$m->addServer('localhost'11211);

$m->set('counter'5);
$n $m->decrement('counter');
var_dump($n);

$n $m->decrement('counter'10);
var_dump($n);

var_dump($m->get('counter'));

$m->set('counter''abc');
$n $m->increment('counter');
// Завершится неудачей т.к. значение записи не является числовым
var_dump($n);
?>

Результат выполнения данного примера:

int(4)
int(0)
int(0)
bool(false)

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

  • Memcached::increment() - Увеличивает числовое значение записи
  • Memcached::incrementByKey() - Увеличивает числовое значение записи, хранимой на указанном сервере
  • Memcached::decrementByKey() - Уменьшает числовое значение записи, хранящееся на определенном сервере

add a note add a note

User Contributed Notes 3 notes

up
17
Pramod Patil
3 years ago
decrement will not change TTL of the stored key/value.
up
12
Pramod Patil
3 years ago
Found possible bug :
decrement fails and returns -1  when memcached::OPT_BINARY_PROTOCOL is set to true.

tested on PECL Memcached 2.1.0 and libmemcached version 1.0.8
up
1
jbaginski
4 years ago
PECL memcached < 0.2.0

public int Memcached::decrement ( string $key [, int $offset = 1 ] )
To Top