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