(mongodb >=0.2.0)
MongoDB\Driver\Manager::executeInsert — Convenience method for a single insert operation
$namespace
, array|object $document
[, MongoDB\Driver\WriteConcern $writeConcern
] )Convenience method to execute a MongoDB\Driver\BulkWrite with only one insert operation.
namespace
Un espace de noms totalement qualifié (databaseName.collectionName)
document
The document to insert.
writeConcern
Optionnellement, une MongoDB\Driver\WriteConcern. Si rien n'est fourni, ce sera les préoccupations d'écriture définies par l' URI de connexion MongoDB.
Retourne le MongoDB\Driver\WriteResult en cas de succès, lance une exception (une instance de la classe MongoDB\Driver\Exception) en cas d'échec.
Exemple #1 MongoDB\Driver\Manager::executeInsert() example
<?php
$document = array(
"title" => "mongodb",
);
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 100);
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$result = $manager->executeInsert("mydb.collection", $document, $writeConcern);
printf("Inserted %d document(s)\n", $result->getInsertedCount());
/* If the WriteConcern could not be fulfilled */
if ($writeConcernError = $result->getWriteConcernError()) {
printf("%s (%d): %s\n", $writeConcernError->getMessage(), $writeConcernError->getCode(), var_export($writeConcernError->getInfo(), true));
}
/* If the write could not happen at all */
foreach ($result->getWriteErrors() as $writeError) {
printf("%s (%d)\n", $writeError->getMessage(), $writeError->getCode());
}
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Inserted 1 document(s)
Note:
Lors d'une erreur pendant une écriture, MongoDB\Driver\WriteResult::getWriteErrors() va n'avoir qu'une MongoDB\Driver\WriteError dans son tableau, et MongoDB\Driver\WriteError::getIndex() vaudra toujours 0 (l'index de cette opération dans le lot).