MongoDB::listCollections
(PECL mongo >=0.9.0)
MongoDB::listCollections — Récupère un tableau des objets MongoCollections pour toutes les collections de cette base de données
Description
$options
= array()
] ) : arrayRécupère une liste de toutes les collections de la base de données et les retourne sous la forme d'un tableau d'objets MongoCollection.
Note: Cette méthode va utiliser la commande de base de données » listCollections lors des communications avec MongoDB 2.8+. Pour les versions précédentes, la méthode va interroger la collection spéciale system.namespaces.
Liste de paramètres
-
options
-
Un tableau d'options listant les collections. Les options actuellement disponibles sont :
"filter"
Critère de requête optionnel. Si fourni, ce critère sera utilisé pour filtrer les collections inclues dans le résultat.
Les champs pertinents qui peuvent être requêtés inclus "name" (nom de la collection comme chaine de caractères, sans préfixer par le nom de la base de données) et "options" (objet contenant les options utilisées pour créér la collection)..
Note: MongoDB 2.6 et les versions antérieures requierent que le critère "name", si spécifié, soit une chaine de caractère (i.e. correspondance exacte). Ceci, car le driver doit préfixer la valeur avec le nom de la base de données afin de requêter la collection system.namespaces. Les versions suivantes de MongoDB n'ont pas cette limitation, comme le driver va utiliser la commande listCollections.
"includeSystemCollections"
Booléen, par défaut
FALSE
. Détermine si les collections systèmes doivent être incluses dans le résultat.
L'option suivante peut être utilisée avec MongoDB 2.8+ :
"maxTimeMS"
Spécifie une limite cumulative de temps, en millisecondes, pour procéder à l'opération (n'inclut pas le temps d'inactivité). Si l'opération n'est pas terminée durant cette période, une exception MongoExecutionTimeoutException sera émise.
Erreurs / Exceptions
Pour MongoDB 2.6 et précédent, une exception MongoException sera lancée si une valeur différente d'une chaîne de caractères a été spécifiée pour l'option "filter" du critère "name".
Historique
Version | Description |
---|---|
1.6.0 | Modification du premier paramètre pour devenir un tableau d'options. Avant la version 1.6.0, le premier paramètre était un booléen indiquant l'option "includeSystemCollections". |
1.3.0 |
Ajout du paramètre includeSystemCollections .
|
Exemples
Exemple #1 Exemple avec MongoDB::listCollections()
L'exemple suivant illustre le comptage de chaque collection de la base de données.
<?php
$m = new MongoClient();
$db = $m->selectDB("demo");
$collections = $db->listCollections();
foreach ($collections as $collection) {
echo "Nombre de documents dans la collection $collection : ";
echo $collection->count(), "\n";
}
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
... Nombre de documents dans la collection demo.pubs : 4 Nombre de documents dans la collection demo.elephpants : 3 Nombre de documents dans la collection demo.cities : 22840 ...
Voir aussi
- MongoDB::getCollectionNames() - Récupère un tableau de noms pour toutes les collections de cette base de données
- MongoDB::getCollectionInfo() - Retourne des informations sur les collections de cette base de données
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-mongodb.listcollections.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.