(PECL mongo >=0.9.0)
MongoDB::listCollections — Gets an array of MongoCollection objects for all collections in this database
$options
= array()
] )Gets a list of all collections in the database and returns them as an array of MongoCollection objects.
Notă: Această metodă va utiliza comanda bazei de date » listCollections la comunicarea cu MongoDB 2.8+. Pentru versiunile anterioare ale bazei de date, metoda va interpela colecția specială system.namespaces.
options
An array of options for listing the collections. Currently available options include:
"filter"
Criteriu opțional pentru interpelare. Dacă este furnizat, acest criteriu va fi utilizat pentru a filtra colecțile incluse în rezultat.
Câmpurile relevante, ce pot fi interpelate, includ "name" (colecția name ca șir de caractere, fără prefixul cu denumirea bazei de date) și "options" (obiect ce conține opțiuni utilizate la crearea colecției)..
Notă: MongoDB 2.6 și versiunile anterioare necesită ca criteriul "name", dacă este specificat, să fie o valoare string (de ex. potrivirea la egalitate). Aceasta este din cauza că driver-ul trebuie să adauge ca prefix la valoare denumirea bazei de date pentru a interpela colecția system.namespaces. Versiunile ulterioare ale MongoDB nu au această limitare, deoarece driver-ul va utiliza comanda listCollections.
"includeSystemCollections"
Boolean, implicit
este FALSE
. Determină dacă colecțiile de sistem trebuie incluse în rezultat.
The following option may be used with MongoDB 2.8+:
"maxTimeMS"
Specifică o limită de timp cumulativă în milisecunde pentru procesarea operațiunii pe server (nu include timpul de așteptare). Dacă operațiunea nu este terminată pe server în timpul rezervat, va fi emisă o MongoExecutionTimeoutException.
Returns an array of MongoCollection objects.
For MongoDB 2.6 and earlier, MongoException will be thrown if a non-string value was specified for the "filter" option's "name" criteria.
Versiune | Descriere |
---|---|
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.3.0 |
Added the includeSystemCollections parameter.
|
Example #1 MongoDB::listCollections() example
The following example demonstrates running count on each collection in a database.
<?php
$m = new MongoClient();
$db = $m->selectDB("demo");
$collections = $db->listCollections();
foreach ($collections as $collection) {
echo "amount of documents in $collection: ";
echo $collection->count(), "\n";
}
?>
Exemplul de mai sus va afișa ceva similar cu:
... amount of documents in demo.pubs: 4 amount of documents in demo.elephpants: 3 amount of documents in demo.cities: 22840 ...