Para usar MongoDB con PHP, debe usar el controlador PHP de MongoDB. Descargue el controlador desde el enlace Descargar controlador PHP… Asegúrese de descargar la última versión. Ahora descomprima el archivo y coloque php_mongo.dll en su directorio de extensiones PHP («ext» por defecto) y agregue la siguiente lÃnea a su archivo php.ini –
extension = php_mongo.dll
Para establecer una conexión, debe proporcionar el nombre de la base de datos, si la base de datos no existe, MongoDB la crea automáticamente.
A continuación se muestra un fragmento de código para conectarse a una 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, dará la siguiente salida:
Connection to database successfully Database mydb selected
A continuación se muestra el fragmento de código para crear la 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, dará la siguiente salida:
Connection to database successfully Database mydb selected Collection created succsessfully
Para insertar un documento en MongoDB, insertar() se utiliza el método.
A continuación se muestra el fragmento de código para insertar el 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" => "https://areatutorial.com/mongodb/", "by" => "Area Tutorial" ); $collection->insert($document); echo "Document inserted successfully"; ?>
Cuando se ejecuta el programa, dará la siguiente salida:
Connection to database successfully Database mydb selected Collection selected succsessfully Document inserted successfully
El método find () se utiliza para seleccionar todos los documentos de la colección.
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, dará la siguiente salida:
Connection to database successfully Database mydb selected Collection selected succsessfully { "title": "MongoDB" }
Para actualizar el documento, debe utilizar el método update ().
En el siguiente ejemplo, actualizaremos el tÃtulo del documento insertado a Tutorial de MongoDB… A continuación se muestra el fragmento de código para actualizar el 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, dará la siguiente salida:
Connection to database successfully Database mydb selected Collection selected succsessfully Document updated successfully Updated document { "title": "MongoDB Tutorial" }
Para eliminar un documento, debe utilizar el método remove ().
En el siguiente ejemplo, eliminaremos documentos con el tÃtulo Tutorial de MongoDB… A continuación se muestra el fragmento de código para eliminar el 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, dará la siguiente salida:
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 usa para solo uno campo Eliminar() método.
Otros métodos de MongoDB findOne (), save (), limit (), skip (), sort () etc. funciona igual que se describe anteriormente.
🚫