Mongo
PHP Manual

Historique des modifications

Les modifications suivantes ont été apportées aux classes/fonctions/méthodes de cette extension.

Driver PHP MongoDB 1.3.0

La série 1.3 introduit plusieurs modifications majeures à l'extension, comme la complète ré-écriture du gestionnaire de connexion (et la suppression du mécanisme de mise en file d'attente), le support des préférences de lecture et la modification de WriteConcerns devant être reconnu en introduisant une nouvelle classe MongoClient qui agit comme classe de remplacement pour la classe Mongo devenue pour l'occasion obsolète.

Le driver supporte maintenant la connexion à de multiples instances mongos (le routeur Mongo Shard) pour la balance de charge.

Mais aussi d'autres améliorations comme la fourniture de log pour un débogage simplifié du gestionnaire de connexion avec la classe MongoLog ainsi que le support du » Framework d'aggrégation via la méthode MongoCollection::aggregate().

Modifications sur les méthodes existantes

Voici une liste de toutes les améliorations sur les méthodes existantes depuis leur création.

VersionFunctionDescription
1.3.3MongoClient::getReadPreferenceLa valeur retournée a changé pour être consistante avec la méthode MongoClient::setReadPreference. La valeur type a été modifiée, passant d'un nombre à une chaîne de caractères, la valeur type_string a été supprimée, et la valeur tagsets exprime désormais les tags sous la forme d'une paire clé/valeur, au lieu d'une chaîne dont les valeurs étaient séparées par une virgule.
 MongoCollection::getReadPreferenceLa valeur retournée a changé pour être consistante avec la méthode MongoCollection::setReadPreference. La valeur type a été modifiée, passant d'un nombre à une chaîne de caractères, la valeur type_string a été supprimée, et la valeur tagsets exprime maintenant les tags sous la forme d'une paire clé/valeur, au lieu d'une chaîne dont les valeurs sont délimitées par une virgule.
 MongoDB::getReadPreferenceLa valeur retournée a changée pour être consistante avec la méthode MongoDB::setReadPreference. La valeur type a été changée, passant d'un nombre à une chaîne de caractères, la valeur type_string a été supprimée, et la valeur tagsets exprime maintenant les tags sous la forme d'une paire clé/valeur, au lieu d'une chaîne dont les valeurs étaient séparées par une virgule.
1.3.0MongoClient::closeLe paramètre connection a été ajouté. Avant cette version, seule la connexion en écriture était fermée par cette méthode.
 MongoClient::__constructAjout des options "readPreference", "readPreferenceTags", "w" et "wTimeout".
 MongoCollection::ensureIndexLe paramètre options n'accepte plus que les booléens pour identifier un index unique. A la place, il peut contenir un tableau dont la syntaxe est la suivante : array('unique' => true).
 MongoCollection::insertLe paramètre options n'accepte plus de booléen pour indiquer une insertion reconnue. A la place, ceci doit maintenant être effectué via array('w' => 1) (Le comportement par défaut de MongoClient).
 MongoCollection::removeLe paramètre options n'accepte plus de booléen pour indiquer "justOne". A la place, ceci doit être indiqué via array('justOne' => true).
 MongoCollection::updateLe paramètre options n'accepte plus de booléen pour indiquer un upsert. A la place, ceci doit être effectué via array('upsert' => true).
 MongoDB::listCollectionsAjout du paramètre includeSystemCollections.
 MongoGridFSCursor::keyL'_id du document est retourné sous forme de chaîne de caractères, sachant que la clé doit être unique. Avant la version 1.3.0, filename était retourné.
1.2.11Mongo::getPoolSizeLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 Mongo::getSlaveLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 Mongo::getSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 Mongo::poolDebugLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 Mongo::setSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 Mongo::switchSlaveLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoBinData::__constructLance une alerte de niveau E_DEPRECATED lorsque le second argument n'est pas utilisé. La valeur par défaut du paramètre type peut changer dans de futures versions.
 MongoCollection::ensureIndexLance une alerte de niveau E_DEPRECATED lorsque le paramètre options est de type scalar.
 MongoCollection::getSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoCollection::groupLance une alerte de niveau E_DEPRECATED lorsque le paramètre options est de type scalar.
 MongoCollection::removeLance une alerte de niveau E_DEPRECATED lorsque le paramètre options est de type scalar.
 MongoCollection::setSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoCollection::updateLance une alerte de niveau E_DEPRECATED lorsque le paramètre options est de type scalar.
 MongoCursor::doQueryLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoDB::authenticateLance une alerte de niveau E_DEPRECATED lorsqu'utilisé. Veuillez passer les détails d'authentification au constructeur.
 MongoDB::forceErrorLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoDB::getSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoDB::prevErrorLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoDB::resetErrorLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoDB::setSlaveOkayLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoPool::getSizeLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoPool::infoLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
 MongoPool::setSizeLance une alerte de niveau E_DEPRECATED lorsqu'utilisé.
1.2.10MongoClient::getHostsLe support de l'absence de jeu de réplication a été ajouté. Les éléments de tableau retournés incluent à présent également le hostname et le port.
1.2.7MongoCollection::batchInsertLe drapeau "continueOnError" a été ajouté.
1.2.5MongoGridFS::storeUploadModification du second paramètre en un tableau de méta-données. Avant la version 1.2.5, le second paramètre étaient une chaîne optionnelle permettant d'écraser le nom du fichier.
1.2.0MongoClient::closeAvant la version 1.2.0, le driver n'utilisait pas les connexions persistentes par défaut, et toutes les connexions étaient fermées dès que une connexion MongoDB sortait du scope. Depuis la version 1.2.0, ce n'est plus le cas et c'est une mauvaise idée d'appeler la méthode close car vous pourriez finir par surcharger le serveur avec des connexions à haute charge.
 MongoClient::__constructAjout des options "username" et "password". Suppression de l'option "persist", toutes les connexions sont désormais persistantes. Le paramètre peut tout de même être utilisé, il sera simplement ignoré. "persist" Si la connexion doit être persistante. La chaine représentant la valeur est utilisée comme identifiant de connexion, ainsi deux instances de MongoClient qui sont initialisées avec array("persist" => "foobar") vont partager la même connexion à la base, alors que une instance initialisée avec array("persist" => "barbaz") utilisera une connexion différente. Le paramètre "replicaSet" accepte maintenant une chaine, pas un booléen.
 MongoCollection::ensureIndexAjout de l'option "timeout".
 MongoCollection::insertAjout de l'option "timeout".
 MongoCollection::removeAjout de l'option "timeout".
 MongoCollection::saveAjout de l'option "timeout".
 MongoCollection::updateAjout de l'option "timeout".
 MongoDB::commandAjout du paramètre options avec une seule option : "timeout".
1.1.0MongoCursor::infoAjout de quelques champs, incluant id (l'identifiant de curseur), at (le compteur du driver du document courant), numReturned (le nombre retourné par le serveur dans le batch courant), et server (le serveur sur lequel la requête a été émise ; utile en plus de ).
1.0.11MongoCollection::ensureIndexL'option "safe" déclenchera le failover du primaire, si nécessaire. MongoException sera envoyée si le nom de l'index (généré ou défini) est plus long que 128 octets.
 MongoCollection::insertSe déconnecte lors d'erreurs "not master" si "safe" est utilisé.
 MongoCollection::removeSe déconnecte lors d'erreurs "not master" si "safe" est utilisé.
 MongoCollection::saveSe déconnecte lors d'erreurs "not master" si "safe" est utilisé.
 MongoCollection::updateSe déconnecte lors d'erreurs "not master" si "safe" est utilisé.
1.0.10MongoCursor::infoAjout du champ started_iterating, un booléen indiquant si le curseur est antérieur ou postérieur à la requête.
1.0.9MongoClient::__constructAjout de l'option "replicaSet".
 MongoCollection::batchInsertAjout de la possibilité de passer des entiers à l'option "safe" (auparavant, seuls les booléens étaient acceptés). Ajout de l'option "fsync".
 MongoCollection::insertAjout de la possibilité de passer des entiers à l'option "safe" (auparavant, seuls les booléens étaient acceptés). Ajotu de l'option "fsync". Le type retourné a changé. C'est maintenant un tableau contenant les informations d'erreur si l'option "safe" est utilisée, sinon, c'est un booléen, comme auparavant.
 MongoCollection::removeAjout de la capacité de passer des entiers à l'option "safe" (n'acceptaient que des booléens avant). Ajout de l'option "fsync". Le type retourné a été modifié en un tableau contenant les informations de l'erreur si l'option "safe" est utilisée, sinon, ce sera un booléen comme auparavant.
 MongoCollection::savePossibilité de passer des entiers pour l'option "safe" (n'acceptait que des booléen avant). Ajout de l'option "fsync".
 MongoCollection::updateAjout de la possibilité de passer des entiers à l'option "safe" (auparavant, seuls les booléens étaient acceptés). Ajout de l'option "fsync". Le type retourné a été modifié en un tableau contenant les informations de l'erreur si l'option "safe" est utilisé, sinon, ce sera un booléen comme auparavant.
1.0.7MongoCollection::countAjout des paramètres limit et skip.
1.0.5MongoCollection::batchInsertAjout du paramètre options.
 MongoCollection::insertModification du second paramètre en un tableau d'options. Avant la version 1.0.5, le second paramètre était un booléen indiquant l'option "safe".
 MongoCollection::removeModification du second paramètre en un tableau d'options. Pre-1.0.5, le second paramètre était un booléen indiquant l'option "safe".
 MongoCollection::saveAjout du paramètre options.
 MongoCollection::updateAjout de l'option "safe".
1.0.2MongoClient::__constructLe constructeur a changé pour accepter une tableau. Avant 1.0.2, le constructeur acceptait les paramètres suivants : server Nom du serveur. connect Paramètre optionnel indiquant si le constructeur doit se connecter à la base avant de retourner l'objet. Par défaut TRUE. persistent Si la connexion doit être persistante. paired Si la connexion doit être pairée.
 MongoCollection::ensureIndexLe paramètre options passe de booléen à un tableau. En version Pre-1.0.2, le second paramètre était une valeur booléenne optionnelle spécifiant un index unique.
1.0.1MongoCollection::insertLance une exception MongoCursorException si l'option "safe" est définie et que l'insertion échoue.
 MongoCollection::updateLe paramètre options passe de booléen à un tableau. En version Pre-1.0.1, le second paramètre était une valeur booléenne optionnelle, spécifiant un upsert.

Mongo
PHP Manual