MongoDB\Driver\Cursor::isDead

(mongodb >=1.0.0)

MongoDB\Driver\Cursor::isDead — VĂ©rifie si le curseur est Ă©puisĂ© ou peut avoir des rĂ©sultats supplĂ©mentaires

Description

final public function MongoDB\Driver\Cursor::isDead(): bool

Vérifie s'il n'y a plus aucun résultat supplémentaire disponible sur le curseur. Cette méthode est similaire à la méthode » cursor.isExhausted() dans le shell MongoDB et son utilité primaire est lors de l'itération de » curseurs de queue.

Un curseur n'a plus de résultats supplémentaires et est considéré "mort" s'il satisfait l'une des conditions ci-dessous:

  • Le lot actuel a Ă©tĂ© complĂštement itĂ©rĂ© et l'ID du curseur est zĂ©ro (c.Ă .d. il est impossible de dĂ©livrer un » getMore).
  • Une erreur a Ă©tĂ© rencontrĂ©e lors de l'itĂ©ration du curseur.
  • Le curseur a atteint sa limite configurĂ©e.

Par sa conception, il n'est pas toujours possible de dĂ©terminer si un curseur a des rĂ©sultats supplĂ©mentaires. Les cas oĂč un curseur peut avoir plus de donnĂ©es disponibles sont les suivants :

  • Il y a des documents supplĂ©mentaires dans le lot courant, qui sont tamponnĂ©s du cĂŽtĂ© client. ItĂ©rer rĂ©cupĂ©rera un document du tampon local.
  • Il n'y a pas de documents supplĂ©mentaires dans le lot courant (c.Ă .d. tampon local), mais l'ID du curseur est diffĂ©rent de zĂ©ro. ItĂ©rer sollicitera plus de documents depuis le serveur via une opĂ©ration » getMore, qui retournera ou pas des rĂ©sultats supplĂ©mentaires et / ou indiquera que le curseur a Ă©tĂ© fermĂ© sur le serveur en retournant zĂ©ro pour son ID.

Liste de paramĂštres

Cette fonction ne contient aucun paramĂštre.

Valeurs de retour

Retourne true si c'est confirmé qu'aucun résultat supplémentaire n'est disponible sur le curseur, et false sinon.

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.

Exemples

Exemple #1 Exemple avec MongoDB\Driver\Cursor::isDead()

<?php

$manager
= new MongoDB\Driver\Manager("mongodb://localhost:27017");
$query = new MongoDB\Driver\Query([]);

$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->insert(['x' => 2]);
$bulk->insert(['x' => 3]);
$manager->executeBulkWrite('db.collection', $bulk);

$cursor = $manager->executeQuery('db.collection', $query);

$iterator = new IteratorIterator($cursor);

$iterator->rewind();
var_dump($cursor->isDead());

$iterator->next();
var_dump($cursor->isDead());

$iterator->next();
var_dump($cursor->isDead());

$iterator->next();
var_dump($cursor->isDead());

?>

Résultat de l'exemple ci-dessus est similaire à :

bool(false)
bool(false)
bool(false)
bool(true)

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.