PHP Velho Oeste 2024

MongoClient::listDBs

(PECL mongo >=1.3.0)

MongoClient::listDBsПеречисляет все доступные базы данных

Расширение, задающее этот метод, объявлено устаревшим. Вместо него используйте расширение MongoDB. Никакой замены данному методу не предусмотрено, но можно использовать функции из библиотеки PHP:

Описание

public MongoClient::listDBs ( void ) : array

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Возвращает ассоциативный массив, содержащий три поля. Первое поле - это databases, которые в свою очередь содержат массив. Каждый элемент массива представляет собой ассоциативный массив, соответствующий базе данных, с указанием имени базы данных, ее размера и, если она пустая. Два других поля - totalSize (в байтах) и ok, что равно 1, если этот метод успешно выполнен.

Примеры

Пример #1 Пример использования MongoClient::listDBs()

Пример, демонстрирующий, как использовать listDBs и возвращенную структуру данных.

<?php

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

?>

Результатом выполнения данного примера будет что-то подобное:

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
0
George Gombay
9 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