(PECL mongo >=1.6.0)
MongoDB::getCollectionInfo — Retourne des informations sur les collections de cette base de données
$options
= array()
] )Récupère une liste de toutes les collections de cette base de données et la retourne sous la forme d'un tableau de documents, contenant leurs noms et leurs options.
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.
options
Un tableau d'options pour lister les collections. Actuellement, les options 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.
Cette fonction retourne un tableau où chaque élément est un tableau décrivant une collection. Les éléments vont contenir une clé name représentant le nom de la collection, et, optionnellement, une clé options contenant un tableau d'objets utilisés pour créer la collection. Par exemple, les collections limitées contiendront les options capped et size.
Pour MongoDB 2.6 et antérieures, une exception MongoException sera émise si une valeur différente d'une chaîne de caractères est spécifiée pour le critère "name" de l'option "filter".
Exemple #1 Exemple avec MongoDB::getCollectionInfo()
<?php
$m = new MongoClient();
$db = $m->selectDB("demo");
var_dump($db->getCollectionInfo());
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
array(2) { [0]=> array(2) { ["name"]=> string(4) "logs" ["options"]=> array(2) { ["capped"]=> bool(true) ["size"]=> int(10240) } } [1]=> array(2) { ["name"]=> string(5) "users" ["options"]=> array(1) { ["flags"]=> int(1) } } }