Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Notas de versión

Conozca las nuevas funcionalidades, mejoras y correcciones introducidas en las siguientes versiones de la MongoDB PHP librería:

  • Versión 2.2

  • Versión 2.1

  • Versión 2.0

  • Versión 1.21

  • Versión 1.20

  • Versión 1.19

  • Versión 1.18

  • Versión 1.17

El lanzamiento de la librería PHP v2.2 incluye las siguientes funcionalidades, mejoras y correcciones:

  • Añade soporte para el/la $createObjectIds Operador de canalización de agregación para generar ObjectID aleatorios.

  • Agrega soporte con los acumuladores de agregación $concatArrays y $setUnion.

  • Agrega soporte para la etapa $scoreFusion del pipeline.

  • Permite pasar una instancia Pipeline en el MongoDB\Collection::findOneAndUpdate() método al utilizar actualizaciones de canalización.

  • Agrega el nuevo método MongoDB\Model\CollectionInfo::isView() a la clase MongoDB\Model\CollectionInfo.

  • Agrega el MongoDB\Database::getGridFSBucket() método para mantener la MongoDB\Database::getCollection() coherencia con.

Importante

Cambios radicales

La versión v2.1 de la biblioteca PHP introduce los siguientes cambios importantes:

  • Se elimina la compatibilidad con MongoDB Server 4.0. La versión mínima compatible con MongoDB Server es 4.2.

El lanzamiento de la librería PHP v2.1 incluye las siguientes funcionalidades, mejoras y correcciones:

  • Agrega compatibilidad con PHP 8.5.

  • Agrega una API de escritura masiva de cliente para realizar operaciones de escritura en múltiples bases de datos y colecciones en la misma llamada. Para obtener más información sobre esta funcionalidad, consulta la sección Escritura masiva del cliente de la guía de Operaciones de escritura masiva.

Importante

Cambios radicales

La versión v2.0 de la biblioteca PHP introduce los siguientes cambios importantes:

  • Los siguientes métodos devuelven void en vez de la respuesta de comando bruta:

    • MongoDB\Client: dropDatabase()

    • MongoDB\Collection: drop(), dropIndex(), dropIndexes(), dropSearchIndex(), rename()

    • MongoDB\Database: createCollection(), drop(), dropCollection(), renameCollection()

Para obtener más información sobre los cambios disruptivos de este lanzamiento, consulta la sección Cambios disruptivos de la versión 2.0 en la guía Actualizar versiones de librerías.

La versión v2.0 de la librería PHP incluye los siguientes cambios y eliminaciones de API:

  • Agrega los siguientes métodos:

    Los métodos Client::selectCollection(), Client::selectDatabase() y Database::selectCollection() quedarán obsoletos y serán reemplazados por estos nuevos métodos en una futura versión de driver, por lo tanto, considera cambiar su uso en tu aplicación.

  • Modifica los métodos MongoDB\Database::aggregate() y MongoDB\Collection::aggregate() para que puedan aceptar una instancia de Pipeline como parámetro $pipeline. Para ver ejemplos que utilicen esta construcción, consulta la sección Creador de agregación de la guía de agregación.

  • Reemplaza los indicios de tipo Cursor por CursorInterface para mejorar la extensibilidad y compatibilidad.

  • Elimina campos obsoletos en los tipos GridFS.

    • La librería no calcula el campo md5 cuando se carga un archivo en GridFS. Si su aplicación requiere un resumen de archivos, debe implementar este proceso fuera de GridFS y almacenar los valores en metadatos.

    • Los campos contentType y aliases ya no se almacenan en la colección files de GridFS. Si tu aplicación requiere esta información, debes almacenarla en los metadatos. Para obtener más información sobre GridFS, consulta la guía Almacenar archivos grandes.

  • Se remueven las siguientes opciones obsoletas para las operaciones de búsqueda:

    • maxScan

    • modifiers

    • oplogReplay

    • snapshot

    Para obtener información sobre las opciones admitidas para las operaciones de búsqueda, consulta la MongoDB\Collection::find() o MongoDB\Collection::findOne() documentación de la API.

  • Remueve el método obsoleto IndexInfo::isGeoHaystack().

  • Se remueven las opciones obsoletas autoIndexId y flags para el método MongoDB\Database::createCollection() .

  • Elimina la compatibilidad con la funcionalidad de reducción de mapas eliminando los siguientes métodos y tipos obsoletos:

    • MongoDB\Collection::mapReduce()

    • MongoDB\MapReduceResult

    Puedes reescribir operaciones de map-reduce usando etapas del pipeline de agregación como $group y $merge. Para obtener más información, consulta map-reduce to pipeline de agregación en el Manual del MongoDB Server.

  • Remueve las siguientes implementaciones de Iterator:

    • MongoDB\Model\CollectionInfoIterator

    • MongoDB\Model\DatabaseInfoIterator

    • MongoDB\Model\IndexInfoIterator

    Los métodos MongoDB\Client::listDatabases(), MongoDB\Database::listCollections() y MongoDB\Collection::listIndexes() devuelven una instancia general de Iterator que proporciona los resultados correspondientes.

El lanzamiento de la librería PHP v1.21 incluye las siguientes funcionalidades, mejoras y correcciones:

Para obtener más información sobre los cambios en esta versión, consulte las notas de la versión v1.21 en GitHub.

Importante

Fin de vida útil del servidor MongoDB v3.6

Se eliminó la compatibilidad con MongoDB Server v3.6 en esta versión de la librería.

  • Agrega soporte para MongoDB Server v8.0.

  • Agrega soporte para consultas de rango encriptadas consultables (Queryable Encryption). Para utilizar esta funcionalidad, tu aplicación debe conectarse a MongoDB Server 8.0 o posterior. Para obtener más información sobre las consultas de rango QE, consulta Queryable Encryption en el manual de MongoDB Server.

  • Cuando una operación de clúster fragmentado no es exitosa, la biblioteca evita seleccionar el mismo servidor mongos para los intentos de reintento de la operación si hay otros servidores mongos disponibles.

  • Cuando crea una clave de datos KMIP, ahora puede especificar la opción delegated. Si esta opción se configura en true, el proveedor KMIP realiza el cifrado y descifrado de la clave de datos localmente, asegurando que la clave de cifrado nunca abandone el servidor KMIP.

  • Se añade la type opción a las especificaciones de índices de búsqueda para los métodos y. Este cambio permite crear índices de búsqueda vectorial de MongoDB\Collection::createIndex() MongoDB mediante programación. Para obtener más información y ver MongoDB\Collection::createSearchIndexes() ejemplos, consulte la guía de índices de búsqueda de MongoDB.

Para obtener más información sobre los cambios en esta versión, consulta las v1.20 notas de versión en GitHub.

Esta versión de la librería PHP no contiene cambios significativos y se añadió para mantener la paridad de versiones con la extensión de PHP.

Para obtener más información sobre esta versión, consulte las 1.18 Notas de la versión v en GitHub.

  • Introduce una nueva API "codec" para convertir BSON hacia y desde objetos PHP. Se puede encontrar más información sobre esta funcionalidad en el tutorial de Codecs.

  • Añade MongoDB\add_logger() y MongoDB\remove_logger() funciones a la librería. Estas funciones permiten a las aplicaciones registrar un Logger PSR-3 para recibir los mensajes de registro emitidos por el controlador. Anteriormente, los registros sólo estaban disponibles a través de la configuración mongodb.debug INI de la extensión.

  • Introduce los nuevos métodos MongoDB\Collection para crear y gestionar índices de MongoDB Search. Los índices de búsqueda de MongoDB Search se pueden consultar utilizando la etapa de pipeline de agregación $search, la cual es compatible con todas las versiones de la librería. Para obtener más información sobre los índices de MongoDB Search y los detalles de la etapa de agregación $search, consulta la documentación de Índices de MongoDB Search y $search.

  • Actualiza el requisito de extensión de mongodb a 1.17.0. La compatibilidad con PHP 7.2 y 7.3 se ha eliminado y la librería ahora requiere PHP 7.4 o una versión más reciente.

Para obtener más información sobre esta versión, consulte las 1.17 Notas de la versión v en GitHub.

Volver

TLS

En esta página