Memcache::set

(PECL memcache >= 0.2.0)

Memcache::setStore data at the server

說明

Memcache::set(
    string $key,
    mixed $var,
    int $flag = ?,
    int $expire = ?
): bool

Memcache::set()key存儲一個元素值為 var。參數expire是以秒為單位的失效時間, 如果設置為0表明該元素永不過期(但是它可能會因為為了給其他項分配空間而被刪除)。如果你希望存儲的元素 經過壓縮(使用zlib),你可以設置flag的值為MEMCACHE_COMPRESSED。

注意:

謹記:資源類型變量(比如文件或連接)不能被存儲在緩存中,因為它們在序列化狀態(tài)不能被完整描述。

同樣你也可以使用函數memcache_set()。

參數

key

要設置值的key。

var

要存儲的值,字符串和數值直接存儲,其他類型序列化后存儲。

flag

使用MEMCACHE_COMPRESSED指定對值進行壓縮(使用zlib)。

expire

當前寫入緩存的數據的失效時間。如果此值設置為0表明此數據永不過期。你可以設置一個UNIX時間戳或 以秒為單位的整數(從當前算起的時間差)來說明此數據的過期時間,但是在后一種設置方式中,不能超過 2592000秒(30天)。

返回值

成功時返回 true, 或者在失敗時返回 false。

范例

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

<?php
/* procedural API */

/* connect to memcached server */
$memcache_obj memcache_connect('memcache_host'11211);

/*
設置'var_key'對應存儲的值
flag參數使用0,值沒有經過壓縮
失效時間為30秒
*/
memcache_set($memcache_obj'var_key''some variable'030);

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_COMPRESSED50);

echo 
$memcache_obj->get('var_key');

?>

參見