MongoCursor::tailable
(PECL mongo >=0.9.4)
MongoCursor::tailable — Establece si este cursor se dejará abierto después de obtener los últimos resultados
Descripción
Mongo posee una característica conocia como cursores de seguimiento ("tailable"), que son similares al comando de Unix "tail -f".
"De seguimiento" significa que el cursor no se cierra al obtener los últimos datos. En su lugar, el cursor marca la posición final del objeto. Se puede continuar usando el cursor más tarde, desde donde estaba ubicado, si se recibieron más datos.
Como cualquie "cursor latente", el cursor podría no ser válido en algún punto; por ejemplo, si el final del objeto al que hace referencia fue eliminado. Por lo tanto, se debería preparado para reconsultar si el cursor está MongoCursor::dead().
Parámetros
-
tail -
Si el cursor debería ser de seguimiento.
Valores devueltos
Devuelve este cursor.
Errores/Excepciones
Lanza una MongoCursorException si este cursor ha empezado a iterar.
Ejemplos
Ejemplo #1 Ejemplo de MongoCursor::tailable()
<?php
$cursor = $collection->find()->tailable();
$resultados = array();
while (1) {
if (!$cursor->hasNext()) {
// we've read all the results, exit
if ($cursor->dead()) {
break;
}
// read all results so far, wait for more
sleep(10);
}
else {
$resultados[] = $cursor->getNext();
}
}
?>
Ver también
La documentación principal de MongoDB sobre » sursores de seguimiento.
- MongoCursor::awaitData() - Establece si el cursor esperará un momento a que un cursor de seguimiento devuelva más datos