数値アイテムの値を減らす

# 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

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() - 指定したサーバー上にある数値アイテムの値を減らす