MongoDB - PHP

Para usar MongoDB con PHP, debe usar el controlador PHP de MongoDB. Descargue el controlador desde la URL Descargar controlador PHP . Asegúrate de descargar la última versión. Ahora descomprima el archivo y coloque php_mongo.dll en su directorio de extensión PHP ("ext" por defecto) y agregue la siguiente línea a su archivo php.ini -

extension = php_mongo.dll

Realizar una conexión y seleccionar una base de datos

Para realizar una conexión, debe especificar el nombre de la base de datos, si la base de datos no existe, MongoDB la crea automáticamente.

A continuación se muestra el fragmento de código para conectarse a la base de datos:

<?php
   // connect to mongodb
   $m = new MongoClient();
	
   echo "Connection to database successfully";
   // select a database
   $db = $m->mydb;
	
   echo "Database mydb selected";
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected

Crear una colección

A continuación se muestra el fragmento de código para crear una colección:

<?php
   // connect to mongodb
   $m = new MongoClient();
   echo "Connection to database successfully";
	
   // select a database
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->createCollection("mycol");
   echo "Collection created succsessfully";
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected
Collection created succsessfully

Insertar un documento

Para insertar un documento en MongoDB, insert() se utiliza el método.

A continuación se muestra el fragmento de código para insertar un documento:

<?php
   // connect to mongodb
   $m = new MongoClient();
   echo "Connection to database successfully";
	
   // select a database
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->mycol;
   echo "Collection selected succsessfully";
	
   $document = array( 
      "title" => "MongoDB", 
      "description" => "database", 
      "likes" => 100,
      "url" => "http://www.tutorialspoint.com/mongodb/",
      "by" => "tutorials point"
   );
	
   $collection->insert($document);
   echo "Document inserted successfully";
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected
Collection selected succsessfully
Document inserted successfully

Buscar todos los documentos

Para seleccionar todos los documentos de la colección, se utiliza el método find ().

A continuación se muestra el fragmento de código para seleccionar todos los documentos:

<?php
   // connect to mongodb
   $m = new MongoClient();
   echo "Connection to database successfully";
	
   // select a database
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->mycol;
   echo "Collection selected succsessfully";
   $cursor = $collection->find();
   // iterate cursor to display title of documents
	
   foreach ($cursor as $document) {
      echo $document["title"] . "\n";
   }
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected
Collection selected succsessfully {
   "title": "MongoDB"
}

Actualizar un documento

Para actualizar un documento, debe utilizar el método update ().

En el siguiente ejemplo, actualizaremos el título del documento insertado a MongoDB Tutorial. A continuación se muestra el fragmento de código para actualizar un documento:

<?php
   // connect to mongodb
   $m = new MongoClient();
   echo "Connection to database successfully";
	
   // select a database
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->mycol;
   echo "Collection selected succsessfully";
   // now update the document
   $collection->update(array("title"=>"MongoDB"), 
      array('$set'=>array("title"=>"MongoDB Tutorial")));
   echo "Document updated successfully";
	
   // now display the updated document
   $cursor = $collection->find();
	
   // iterate cursor to display title of documents
   echo "Updated document";
	
   foreach ($cursor as $document) {
      echo $document["title"] . "\n";
   }
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected
Collection selected succsessfully
Document updated successfully
Updated document {
   "title": "MongoDB Tutorial"
}

Eliminar un documento

Para eliminar un documento, debe utilizar el método remove ().

En el siguiente ejemplo, eliminaremos los documentos que tienen el título MongoDB Tutorial. A continuación se muestra el fragmento de código para eliminar un documento:

<?php
   // connect to mongodb
   $m = new MongoClient();
   echo "Connection to database successfully";
	
   // select a database
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->mycol;
   echo "Collection selected succsessfully";
   
   // now remove the document
   $collection->remove(array("title"=>"MongoDB Tutorial"),false);
   echo "Documents deleted successfully";
   
   // now display the available documents
   $cursor = $collection->find();
	
   // iterate cursor to display title of documents
   echo "Updated document";
	
   foreach ($cursor as $document) {
      echo $document["title"] . "\n";
   }
?>

Cuando se ejecuta el programa, producirá el siguiente resultado:

Connection to database successfully
Database mydb selected
Collection selected successfully
Documents deleted successfully

En el ejemplo anterior, el segundo parámetro es de tipo booleano y se utiliza para justOne campo de remove() método.

Métodos restantes de MongoDB findOne(), save(), limit(), skip(), sort() etc. funciona igual que se explicó anteriormente.