Actually, when you pass a callback, method doesn't return immediately, but waits for results and calls callback function.
Memcached::getDelayed
(PECL memcached >= 0.1.0)
Memcached::getDelayed — Request multiple items
Descrierea
Memcached::getDelayed() issues a request to memcache for
multiple items the keys of which are specified in the
keys array. The method does not wait for response
and returns right away. When you are ready to collect the items, call
either Memcached::fetch() or
Memcached::fetchAll(). If with_cas
is true, the CAS token values will also be requested.
Instead of fetching the results explicitly, you can specify a result callback via
value_cb parameter.
Parametri
-
keys -
Array of keys to request.
-
with_cas -
Whether to request CAS token values also.
-
value_cb -
The result callback or
NULL.
Valorile întoarse
Întoarce valoarea TRUE în cazul
succesului sau FALSE în cazul eșecului.
Utilizați
Memcached::getResultCode()
dacă e necesar.
Exemple
Example #1 Memcached::getDelayed() example
<?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());
?>
Exemplul de mai sus va afișa:
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)
}
}
Vedeți de asemenea
- Memcached::getDelayedByKey() - Request multiple items from a specific server
- Memcached::fetch() - Fetch the next result
- Memcached::fetchAll() - Fetch all the remaining results
