MongoDB::createCollection

(PECL mongo >=0.9.0)

MongoDB::createCollectionCrée une collection

Description

public MongoCollection MongoDB::createCollection ( string $name [, array $options ] )

Cette méthode est utilisée pour créer des collections limitées ainsi que des collections nécessitant des options spéciales. Cette méthode revient à exécuter :

<?php

$collection = $db->command(array(
	"create" => $name,
	"capped" => $options["capped"],
	"size" => $options["size"],
	"max" => $options["max"],
	"autoIndexId" => $options["autoIndexId"],
));

?>
Voir la méthode MongoDB::command() pour plus d'informations sur les commandes de base de données.

Liste de paramètres

name

Le nom de la collection.

options

Un tableau contenant les options pour les collections. Chaque option est son propre élément dans le tableau des options, dont le nom de l'option listée ci-dessous est la clé de l'élément. Les options supportées dépendent de la version du serveur MongoDB. Actuellement, les options suivantes sont supportées :

capped

Si la collection doit avoir une taille fixe.

size

Si la collection a une taille fixe, la taille en octets.

max

Si la collection a une taille fixe, le nombre maximum d'éléments à stoquer dans la collection.

autoIndexId

Si l'option capped vaut TRUE, vous pouvez spécifier FALSE ici pour désactiver la création d'index automatique sur le champ _id. Avant MongoDB 2.2, la valeur par défaut pour autoIndexId était FALSE.

Valeurs de retour

Retourne un objet MongoCollection, qui représente la nouvelle collection.

Exemples

Exemple #1 Exemple avec MongoDB::createCollection()

<?php

$log = $db->createCollection(
	"logger",
	array(
		'capped' => true,
		'size' => 10*1024,
		'max' => 10
	)
);

for ($i = 0; $i < 100; $i++) {
	$log->insert(array("level" => WARN, "msg" => "Message simple d'historisation #$i", "ts" => new MongoDate()));
}

$msgs = $log->find();

foreach ($msgs as $msg) {
	echo $msg['msg']."\n";
}

?>

L'exemple ci-dessus va afficher quelque chose de similaire à :


Message simple d'historisation #90
Message simple d'historisation #91
Message simple d'historisation #92
Message simple d'historisation #93
Message simple d'historisation #94
Message simple d'historisation #95
Message simple d'historisation #96
Message simple d'historisation #97
Message simple d'historisation #98
Message simple d'historisation #99

Historique

Version Description
1.4.0

Dans les versions antérieures à 1.4.0, les options étaient toutes des arguments de la méthode. La signature de la fonction dans ces anciennes versions était :

public MongoCollection MongoDB::createCollection ( string $name [, bool $capped = FALSE [, int $size = 0 [, int $max = 0 ]]] )

La signification de ces options est la même que celle décrite ci-dessus, dans l'argument options.

LoadingChargement en cours