MongoDB::getCollectionNames

(PECL mongo >=1.3.0)

MongoDB::getCollectionNamesGets an array of names for all collections in this database

Описание

public array MongoDB::getCollectionNames ([ array $options = array() ] )

Gets a list of all collections in the database and returns their names as an array of strings.

Замечание: Этот метод использует комманду » listCollections когда общается с MongoDB 2.8+. Для более старых баз данных, этот метод запрашивает специальную коллекцию system.namespaces.

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

options

An array of options for listing the collections. Currently available options include:

  • "filter"

    Опциональный критерий запроса. Если задан, то будет использован для фильтрации коллекций, включенных в результирующий набор.

    Подходящие поля для запроса включают "name" (строка с именем коллекции, без префикса в виде имени базы данных) и "options" (объект, включающий опции, использованные при создании этой коллекции)..

    Замечание: MongoDB 2.6 и более ранние версии, требуют, чтобы критерий "name" был строго строкового типа. Потому, что драйвер должен добавть к этому значению префикс в виде имени базы данныхдля запроса коллекции system.namespaces. Более поздние версии MongoDB не имеют этого ограничения, так как драйвер использует комманду listCollections.

  • "includeSystemCollections"

    Логическое значение, по умолчанию FALSE. Определяет, должны ли системные коллекции входить в результирующий набор.

The following option may be used with MongoDB 2.8+:

  • "maxTimeMS"

    Указывает суммарный лимит времени в миллисекундах на обработку операции (не включая время простоя) на сервере. Если операция на стороне сервера не завершилась за это время, то вызывается исключение MongoExecutionTimeoutException.

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

Returns the collection names as an array of strings.

Ошибки

For MongoDB 2.6 and earlier, MongoException will be thrown if a non-string value was specified for the "filter" option's "name" criteria.

Список изменений

Версия Описание
1.6.0 Changed first parameter to be an array of options. Pre-1.6.0, the first parameter was a boolean indicating the "includeSystemCollections" option.

Примеры

Пример #1 MongoDB::getCollectionNames() example

<?php
$m 
= new MongoClient();
$db $m->selectDB("demo");
$collections $db->getCollectionNames();

foreach (
$collections as $collectionName) {
    echo 
"Found collection: "$collectionName"\n";
}
?>

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

...
Found collection: img
Found collection: beer
Found collection: collation
...

Смотрите также