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 — Obtener varios ítems
Descripción
Memcached::getDelayed() hace una petición a memcache de múltiples ítems con las claves que se especifican en el array de keys. El método no se espera a tener una respuesta y devuelve el valor inmediatamente. Cuando se esté preparado para colectar los ítems, hay que llamar Memcached::fetch() o Memcached::fetchAll(). Si with_cas es true, los valores del CAS token también serán solicitados.
En lugar de capturar los resultados explicitamente, se puede especificar un resultado de llamada de retorno usando el parámetro value_cb.
Parámetros
- keys
-
Array de claves a solicitar.
- with_cas
-
Cuando solicitar valores CAS token.
- value_cb
-
El resultado de la llamada de retorno o NULL.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error. Use Memcached::getResultCode() si es necesario.
Ejemplos
Example #1 Ejemplo de 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());
?>
El resultado del ejemplo serí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)
}
}
Ver también
- Memcached::getDelayedByKey() - Solicitar múltiples ítems de un servidor específico
- Memcached::fetch() - Obtener el siguiente resultado
- Memcached::fetchAll() - Obtener todos los resultados restantes
