存储一个元素

# Memcached::set

(PECL memcached >= 0.1.0)

Memcached::set — 存储一个元素

### 说明

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

Memcached::set() 将 `value` 存储在一个 memcached 服务器上的 `key` 下。`expiration` 参数 用于控制值的过期时间。

值可以是任何有效的非资源型 php 类型，因为资源类型不能被序列化存储。如果 `Memcached::OPT_COMPRESSION` 选项开启，序列化的值同样会被压缩存储。

### 参数

`key`

  用于存储值的键名。

`value`

  存储的值。

`expiration`

  到期时间，默认为 0。 更多信息请参见到期时间。

### 返回值

成功时返回 `true`， 或者在失败时返回 `false`。 如需要则使用 Memcached::getResultCode()。

### 示例

示例 #1 Memcached::set() 示例

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

    $m->set('int', 99);
    $m->set('string', 'a simple string');
    $m->set('array', array(11, 12));
    /* 'object' 这个 key 将在 5 分钟后过期 */
    $m->set('object', new stdClass, time() + 300);

    var_dump($m->get('int'));
    var_dump($m->get('string'));
    var_dump($m->get('array'));
    var_dump($m->get('object'));
    ?>

以上示例的输出类似于：

    int(99)
    string(15) "a simple string"
    array(2) {
      [0]=>
      int(11)
      [1]=>
      int(12)
    }
    object(stdClass)#1 (0) {
    }

### 参见

- Memcached::setByKey() - 将元素存储到指定的服务器上
- Memcached::add() - 向新 key 添加元素
- Memcached::replace() - 替换已存在 key 下的元素

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