(PECL memcache >= 0.2.0)
Memcache::get — 從服務(wù)端檢回一個元素
$key
, int &$flags
= ?): string$keys
, array &$flags
= ?): array
如果服務(wù)端之前有以key
作為key存儲的元素,Memcache::get()方法此時返回之前存儲的值。
你可以給Memcache::get()方法傳遞一個數(shù)組(多個key)來獲取一個數(shù)組的元素值,返回的數(shù)組僅僅包含從 服務(wù)端查找到的key-value對。
key
要獲取值的key或key數(shù)組。
flags
如果給定這個參數(shù)(以引用方式傳遞),該參數(shù)會被寫入一些key對應(yīng)的信息。這些標(biāo)記和Memcache::set()方法中的同名參數(shù) 意義相同。用int值的低位保留了pecl/memcache的內(nèi)部用法(比如:用來說明壓縮和序列化狀態(tài))。(譯注:最后一位表明是否序列化,倒數(shù)第二位表明是否經(jīng)過壓縮, 比如:如果此值為1表示經(jīng)過序列化,但未經(jīng)過壓縮,2表明壓縮而未序列化,3表明壓縮并且序列化,0表明未經(jīng)過壓縮和序列化,具體算法可查找linux文件權(quán)限算法相關(guān)資料)
返回key
對應(yīng)的存儲元素的字符串值或者在失敗或key
未找到的時候返回false
。
示例 #1 Memcache::get() 示例
<?php
/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
$var = memcache_get($memcache_obj, 'some_key');
/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$var = $memcache_obj->get('some_key');
/*
你同樣可以使用數(shù)組key作為參數(shù),如果某個元素沒有在服務(wù)端發(fā)現(xiàn),結(jié)果數(shù)組中將不會包含這些key。
*/
/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
$var = memcache_get($memcache_obj, Array('some_key', 'another_key'));
/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$var = $memcache_obj->get(Array('some_key', 'second_key'));
?>