(PECL memcached >= 0.1.0)
Memcached::getDelayed — 請求多個(gè)元素
$keys
, bool $with_cas
= ?, callback $value_cb
= ?): bool
Memcached::getDelayed()向Memcached服務(wù)端發(fā)出一個(gè)檢索keys
指定的多個(gè)
key對應元素的請求。這個(gè)方法不會(huì )等待響應而是立即返回。當你需要收集元素值時(shí), 調用Memcached::fetch()或
Memcached::fetchAll()。如果with_cas
設置為true,會(huì )同時(shí)請求每個(gè)元素的CAS標記。
可以通過(guò)參數value_cb
指定一個(gè)result callback來(lái)替代明確的抓取結果(fetch或fetchAll為明確抓取方式)。
keys
要請求的key的數組。
with_cas
是否同時(shí)請求CAS標記。
value_cb
結果回掉函數或null
。
成功時(shí)返回 true
, 或者在失敗時(shí)返回 false
。
如需要則使用 Memcached::getResultCode()。
示例 #1 Memcached::getDelayed() 示例
<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$m->set('int', 99);
$m->set('string', 'a simple string');
$m->set('array', array(11, 12));
$m->getDelayed(array('int', 'array'), true);
var_dump($m->fetchAll());
?>
以上例程會(huì )輸出:
array(2) { [0]=> array(3) { ["key"]=> string(3) "int" ["value"]=> int(99) ["cas"]=> float(2363) } [1]=> array(3) { ["key"]=> string(5) "array" ["value"]=> array(2) { [0]=> int(11) [1]=> int(12) } ["cas"]=> float(2365) } }