The PHP Online Conference 2021

MongoClient::listDBs

(PECL mongo >=1.3.0)

MongoClient::listDBsEnumera todas las bases de datos disponibles

Esta extenisón que define este método está obsoleta. En su lugar debe usarse la extensión MongoDB. No hay equivalente para este método en la nueva extensión, aunque existe una alterenativa en la biblioteca de PHP:

Descripción

public MongoClient::listDBs ( void ) : array

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Devuelve un array asociativo que contiene tres campos. El primero es databases, que a su vez contiene un array. Cada elemento del array es un array asociativo que se corresponde a una base de datos, proporcionando el nombre de la base de datos, el tamaño, y si está vacía. Los otros dos campos son totalSize (tamaño total en bytes) y ok, que es 1 si este método se ejecutó con éxito.

Ejemplos

Ejemplo #1 Ejemplo de MongoClient::listDBs()

Ejemplo que demuestra cómo usar listDBs y la estructura de datos devuelta.

<?php

$mongo 
= new MongoClient();
$bds $mongo->listDBs();
print_r($bds);

?>

El resultado del ejemplo sería algo similar a:

Array
(
    [databases] => Array
        (
            [0] => Array
                (
                    [name] => doctrine
                    [sizeOnDisk] => 218103808
                    [empty] =>
                )
        )

    [totalSize] => 218103808
    [ok] => 1
)

add a note add a note

User Contributed Notes 1 note

up
1
George Gombay
6 years ago
A "no frills" listing of all the databases present can be obtained by means of the simple following steps:

<?php
$conn
= new MongoClient("mongodb://localhost");
$dbases = $conn->listDBs();
$num = 0;
foreach (
$dbases['databases'] as $dbs) {
        
$num++;
       
$dbname = $dbs['name'];
         echo
"<br> $num. $dbname";
     }
?>

On the assumption that you have three databases present, the foregoing will produce an output that will look similar to this:

1. local
2. members
3. test
To Top