Memcached::decrement
(PECL memcached >= 0.1.0)
Memcached::decrement — 数値アイテムの値を減らす
説明
public Memcached::decrement
( string $key
[, int $offset
= 1
[, int $initial_value
= 0
[, int $expiry
= 0
]]] ) : int|false
Memcached::decrement() は、数値アイテムの値を
offset
で指定しただけ減らします。
アイテムの値が数値でない場合はエラーとなります。
操作後の値が 0 より小さくなる場合は、新しい値は 0 となります。
アイテムが存在しない場合、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() - 指定したサーバー上にある数値アイテムの値を減らす