PHP & MongoDB – Embedded Documents


PHP & MongoDB – Insert Embedded Documents



”;


First step to do any operation is to create a Manager instance.


// Connect to MongoDB using Manager Instance
$manager = new MongoDBDriverManager("mongodb://localhost:27017");

Second step is to prepare and execute a bulkWrite object to insert record(s) with embedded documents in the collection.


// Create a BulkWrite Object
$bulk = new MongoDBDriverBulkWrite([''ordered'' => true]);

$bulk->insert([''title'' => "MongoDB Overview", 
   ''description'' => ''MongoDB is no SQL database'', 
   ''by'' => ''tutorials point'',
   ''url'' => ''http://www.tutorialspoint.com'',
   ''comments'' => [
      [''user'' => "user1", ''message'' => "My First Comment", ''dateCreated'' => "20/2/2020", ''like'' => 0],
      [''user'' => "user2", ''message'' => "My Second Comment", ''dateCreated'' => "20/2/2020", ''like'' => 0],
   ]]);

// Execute the commands.
$result = $manager->executeBulkWrite(''myDb.sampleCollection'', $bulk);

Example

Try the following example to insert document with embedded documents in a collection in MongoDB server −

Copy and paste the following example as mongodb_example.php −


<?php
   try {
	  // connect to mongodb
      $manager = new MongoDBDriverManager("mongodb://localhost:27017");
	  
      $bulk = new MongoDBDriverBulkWrite([''ordered'' => true]);

      $bulk->insert([''title'' => "MongoDB Overview", 
         ''description'' => ''MongoDB is no SQL database'', 
         ''by'' => ''tutorials point'',
         ''url'' => ''http://www.tutorialspoint.com'',
         ''comments'' => [
		 [''user'' => "user1", ''message'' => "My First Comment", ''dateCreated'' => "20/2/2020", ''like'' => 0],
		 [''user'' => "user2", ''message'' => "My Second Comment", ''dateCreated'' => "20/2/2020", ''like'' => 0],
		 ]]);

      $result = $manager->executeBulkWrite(''myDb.sampleCollection'', $bulk);

      printf("Inserted %d document(s).n", $result->getInsertedCount());
   } catch (MongoDBDriverExceptionException $e) {	   
      echo "Exception:", $e->getMessage(), "n";
   }
?>

Output

Access the mongodb_example.php deployed on apache web server and verify the output.


Inserted 1 document(s).

Advertisements

”;

Leave a Reply

Your email address will not be published. Required fields are marked *