MongoDB PHP

Para usar MongoDB en PHP, debes usar el controlador PHP de MongoDB.

Consulta la instalación de MongoDB PHP en varias plataformas y la descarga del paquete de controladores en:Instalación del controlador de extensión MongoDB para PHP

Si estás usando PHP 7, consulta:Instalación y uso de MongoDB en PHP 7。

Asegurar la conexión y seleccionar una base de datos

Para asegurar una conexión correcta, necesitas especificar el nombre de la base de datos. Si la base de datos no existe en MongoDB, MongoDB la creará automáticamente.

El fragmento de código es el siguiente:

<?php
$m = new MongoClient(); // 连接默认主机和端口为:mongodb://localhost:27017
$db = $m->test; // 获取名称为 "test" 的数据库
?>

Crear una colección

El fragmento de código para crear una colección es el siguiente:

<?php
$m = new MongoClient(); // 连接
$db = $m->test; // 获取名称为 "test" 的数据库
$collection = $db->createCollection("ejemplo");
echo "集合创建成功";
?>

Al ejecutar el programa anterior, el resultado de salida es el siguiente:

Colección creada con éxito

Insertar documento

En MongoDB, usa el método insert() para insertar documentos:

El fragmento de código para insertar documentos es el siguiente:

<?php
$m = new MongoClient();    // 连接到mongodb
$db = $m->test;            // 选择一个数据库
$collection = $db->ejemplo; // 选择集合
$document = array( 
    "title" => "MongoDB", 
    "description" => "database", 
    "likes" => 100,
    "url" => "http://www.example.com/mongodb/",
    "by", "Ejemplo"
);
$collection->insert($document);
echo "数据插入成功";
?>

Al ejecutar el programa anterior, el resultado de salida es el siguiente:

Datos insertados con éxito

Luego, en el cliente de mongo, usamosdb.ejemplo.find().pretty();el comando para ver los datos:


Buscar documento

Usa el método find() para leer los documentos de la colección.

El fragmento de código para leer documentos es el siguiente:

<?php
$m = new MongoClient();    // 连接到mongodb
$db = $m->test;            // 选择一个数据库
$collection = $db->ejemplo; // 选择集合

$cursor = $collection->find();
// 迭代显示文档标题
foreach ($cursor as $document) {
    echo $document["title"] . "\n";
}
?>

Al ejecutar el programa anterior, el resultado de salida es el siguiente:

MongoDB

Actualizar documento

Usa el método update() para actualizar documentos.

El siguiente ejemplo actualizará el título del documento a 'Tutorial de MongoDB'. El fragmento de código es el siguiente:

<pre>
<?php
$m = new MongoClient();    // 连接到mongodb
$db = $m->test;            // 选择一个数据库
$collection = $db->ejemplo; // 选择集合
// 更新文档
$collection->update(array("title"=>"MongoDB"), array('$set'=>array("title"=>"MongoDB 教程")));
// 显示更新后的文档
$cursor = $collection->find();
// 循环显示文档标题
foreach ($cursor as $document) {
    echo $document["title"] . "\n";
}
?>

Al ejecutar el programa anterior, el resultado de salida es el siguiente:

MongoDB 教程

Luego, en el cliente de mongo, usamosdb.ejemplo.find().pretty();el comando para ver los datos:


Eliminar documento

Usa el método remove() para eliminar documentos.

En el siguiente ejemplo, eliminaremos un registro de datos cuyo 'title' sea 'Tutorial de MongoDB'. El fragmento de código es el siguiente:

<?php
$m = new MongoClient();    // 连接到mongodb
$db = $m->test;            // 选择一个数据库
$collection = $db->ejemplo; // 选择集合
   
// 移除文档
$collection->remove(array("title"=>"MongoDB 教程"), array("justOne" => true));

// 显示可用文档数据
$cursor = $collection->find();
foreach ($cursor as $document) {
    echo $document["title"] . "\n";
}
?>

Además de los ejemplos anteriores, en PHP también puedes usar métodos como findOne(), save(), limit(), skip(), sort(), etc., para operar la base de datos MongoDB.

Para más métodos de operación, consulta la clase principal de MongoDB:http://php.net/manual/zh/mongo.core.php。

Otras extensiones