(PECL memcached >= 0.1.0)
Memcached::set — 存储一个元素
Memcached::set()将value
存储在一个memcached服务器上的key
下。expiration
参数
用于控制值的过期时间。
值可以是任何有效的非资源型php类型, 因为资源类型不能被序列化存储。如果Memcached::OPT_COMPRESSION
选项开启, 序列化的值同样会被压缩存储。
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
如需要则使用 Memcached::getResultCode()。
Example #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) { }
miha at hribar dot info (2009-07-16 08:26:33)
The method correctly returns false if you set the value to false. This means that in order to have proper fault checking mechanism in place you need to check the result code.
<?php
$Memcached = new Memcached();
$Memcached->addServer('localhost', 11211);
$Memcached->set('key', false);
var_dump($Memcached->get('key')); // boolean false
var_dump($Memcached->getResultCode()); // int 0 which is Memcached::RES_SUCCESS
?>