(PECL memcache >= 0.2.0)
Memcache::set — Store data at the server
Memcache::set()向key
存儲一個元素值為
var
。參數(shù)expire
是以秒為單位的失效時間,
如果設置為0表明該元素永不過期(但是它可能會因為為了給其他項分配空間而被刪除)。如果你希望存儲的元素
經(jīng)過壓縮(使用zlib),你可以設置flag
的值為MEMCACHE_COMPRESSED
。
同樣你也可以使用函數(shù)memcache_set()。注意:
謹記:資源類型變量(比如文件或連接)不能被存儲在緩存中,因為它們在序列化狀態(tài)不能被完整描述。
key
要設置值的key。
var
要存儲的值,字符串和數(shù)值直接存儲,其他類型序列化后存儲。
flag
使用MEMCACHE_COMPRESSED
指定對值進行壓縮(使用zlib)。
expire
當前寫入緩存的數(shù)據(jù)的失效時間。如果此值設置為0表明此數(shù)據(jù)永不過期。你可以設置一個UNIX時間戳或 以秒為單位的整數(shù)(從當前算起的時間差)來說明此數(shù)據(jù)的過期時間,但是在后一種設置方式中,不能超過 2592000秒(30天)。
成功時返回 true
, 或者在失敗時返回 false
。
示例 #1 Memcache::set() 示例
<?php
/* procedural API */
/* connect to memcached server */
$memcache_obj = memcache_connect('memcache_host', 11211);
/*
設置'var_key'對應存儲的值
flag參數(shù)使用0,值沒有經(jīng)過壓縮
失效時間為30秒
*/
memcache_set($memcache_obj, 'var_key', 'some variable', 0, 30);
echo memcache_get($memcache_obj, 'var_key');
?>
示例 #2 Memcache::set() 示例
<?php
/* OO API */
$memcache_obj = new Memcache;
/* connect to memcached server */
$memcache_obj->connect('memcache_host', 11211);
/*
設置'var_key'對應值,使用即時壓縮
失效時間為50秒
*/
$memcache_obj->set('var_key', 'some really big variable', MEMCACHE_COMPRESSED, 50);
echo $memcache_obj->get('var_key');
?>