Trouver un document en utilisant la méthode MongoCollection::findOne()

Pour montrer que le document inséré dans l'étape précédente est bien stocké dans la base de données, nous pouvons simplement utiliser la méthode MongoCollection::findOne() pour récupérer une seule document de la collection. Cette méthode est utile dans les cas où il n'y a qu'un seul document correspondant aux critères ou bien si vous ne souhaitez qu'un seul résultat.

<?php
$connection = new MongoClient();
$collection = $connection->database->collectionName;

$document = $collection->findOne();
var_dump( $document );
?>
<?php
$connection = new MongoClient();
$db = $connection->database;

$db->foo->insert(array("_id" => 1));
// ceci émettra une exception
$db->foo->insert(array("_id" => 1));

// ceci est correct, sachant que c'est une collection différente
$db->bar->insert(array("_id" => 1));

?>

Par défaut, le driver va s'assurer que le serveur a reconnu l'écriture avant de retourner. Vous pouvez optionnellement désactiver ce comportement en passant array("w" => 0) en tant que second argument. Cela signifie que le driver ne va pas attendre la reconnaissance de l'écriture par le serveur, et n'émettra pas d'exception sur le duplicata de _id.

Voir aussi

La méthode MongoCollection::findOne() pour plus d'informations sur la recherche de données.

La classe MongoId vous fournira plus de détails sur les identifiants uniques.

La section sur les écritures couvre les écritures en profondeur, et le chapitre Write Concerns va dans le détail des options d'écritures.

LoadingChargement en cours