对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。

版本说明

了解以下版本的MongoDB PHP库中引入的新功能、改进和修复:

PHP库 v2.5发布包含以下功能、改进和修复:

  • 将PHP扩展要求升级到版本 2.5 或更高版本。

  • 增加对客户端背压的支持。当服务器返回带有正 baseBackoffMS 值的可重试过载错误时,驱动程序会使用该值作为其重试退避的基础,而不是使用驱动程序的默认值。

  • 为传递给 MongoDB\Client 构造函数和 MongoDB\Client::createClientEncryption() 方法的选项添加数组形状类型定义。PHPStan 和 Psalm 等静态分析工具可以使用这些类型来验证您的客户端、驱动程序和自动加密选项。

  • 修复了 MongoDB\GridFS\Bucket::uploadFromStream() 方法可能无法关闭其目标流的问题,该问题曾导致文件无法写入数据库。

重要

PHP扩展 v2.5.3 包括对 CVE-2026-96745 的修复。

有关MongoDB安全更新的最新信息,请参阅MongoDB安全公告。

有关此版本中的完整更改列表,请参阅 Github 上的 v2.5 发布说明。

PHP 库 v2.4.2 发布版包含以下更改:

重要

PHP 库 v2.4.2包含针对 CVE-2026-88023 的修复。

有关MongoDB安全更新的最新信息,请参阅MongoDB安全公告。

有关此版本中更改的完整列表,请参阅 GitHub 上的 v2.4.2 发布说明。

PHP 库 v2.4.1 发布版包含以下更改:

重要

PHP 库 v2.4.1包含针对 CVE-2026-81525 的修复。

有关MongoDB安全更新的最新信息,请参阅MongoDB安全公告。

有关此版本中更改的完整列表,请参阅 GitHub 上的 v2.4.1 发布说明。

PHP库 v2.4发布包含以下功能、改进和修复:

  • 在 Builder API 中添加对 $rerank 聚合管道阶段的支持。您可以使用 Stage::rerank() 工厂方法,通过使用 Voyage AI 的 重新排序模型来对输入文档进行重新排序,并返回按相关性排序的相同文档。

  • 在 MongoDB 向量搜索索引定义中添加对 storedSource 选项的支持。您可以使用此选项在索引中存储指定字段的副本,以在查询时实现更快速的检索。要了解更多信息,请参阅 MongoDB Search 索引指南中的使用 storedSource 选项。

  • 在MongoDB\ 驱动程序 \ClientEncryption::encrypt() 方法中添加对 stringOpts 选项的支持。您可以将此选项与 String算法一起使用,以指定区分大小写和变音符号以及长度约束。前缀、后缀和子字符串查询需要MongoDB Server v9.0 或更高版本。要学习;了解更多信息,请参阅显式加密。

重要

以下功能需要 MongoDB Server v8.3 或更高版本。

  • 为新 $convert 功能添加构建者支持。您可以使用 $convert 来:

    • 执行数字基数转换。

    • 将任何类型转换为 string。

    • 将 JSON string 转换为数组或对象。

  • 添加对 $subtype 的支持,它返回 BinData 值的子类型整数。

  • 添加对 $createObjectId 的支持,它会生成随机 ObjectId 值。

  • 在聚合 string 表达式中添加对正则表达式的支持。现在,您可以在 $replaceOne 和 $replaceAll 的 find 参数中使用正则表达式,并将其作为 $split 的分隔符。

有关此版本中的完整更改列表,请参阅 Github 上的 v2.4 发布说明。

PHP库 v2.3发布包含以下功能、改进和修复:

  • 在 Builder API中添加对原子更新操作符的支持。您可以使用 MongoDB\Builder\Update 类中的工厂方法通过代码完成和类型检查来构造更新文档。要学习;了解更多信息,请参阅更新文档指南的更新构建者部分。

  • 将PHP扩展要求升级到版本 2.3 或更高版本。

  • 弃用了对MongoDB Server v4.2 的支持。即将推出的PHP库版本需要MongoDB Server v4.4 或更高版本。

  • 添加 enableOverloadRetargeting 和 maxAdaptiveRetries URI 选项。这些选项控制驱动程序遇到超负载服务器时的重试行为,仅在 MongoDB 9.0 或更高版本上支持。要了解更多信息,请参阅服务器选择和发现选项。

有关此版本中更改的更多信息,请参阅Github上的v2.3发布说明。

PHP库 v2.2发布包含以下功能、改进和修复:

重要

重大更改

PHP库 v2.1发布引入了以下重大更改:

  • 删除对MongoDB Server 4.0 的支持。支持的最低MongoDB Server版本为 4.2。

PHP库 v2.1发布包含以下功能、改进和修复:

  • 新增与PHP 8.5 的兼容性。

  • 添加客户端端批量写入API ,以便在同一调用中对多个数据库和集合执行写入操作。要学习;了解有关此功能的更多信息,请参阅批量写入操作指南中的客户端批量写入部分。

重要

重大更改

PHP库 v2.0发布引入了以下重大更改:

  • 以下方法返回 void 而不是原始命令响应:

    • MongoDB\Client: dropDatabase()

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

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

要学习;了解有关此发布中重大更改的更多信息,请参阅升级库版本指南中的版本 2.0 重大更改部分。

PHP库 v2.0发布包括以下API更改和删除:

PHP库 v1.21发布包含以下功能、改进和修复:

有关此版本中更改的更多信息,请参阅Github上的v1.21发布说明。

重要

MongoDB Server v 3.6 生命周期结束

此发布的库删除了对MongoDB Server v 3.6的支持。

  • 新增支持MongoDB Server v 8.0的支持。

  • 添加支持可查询Queryable Encryption(QE)范围查询的支持。 要使用此功能,您的应用必须连接到MongoDB Server 8.0或更高版本。 有关 QE范围查询的更多信息,请参阅MongoDB Server手册中的可查询Queryable Encryption。

  • 当分片集群操作不成功时,如果有其他mongos服务器可用,则该库会避免选择相同的mongos服务器进行操作重试。

  • 创建 KMIP 数据密钥时,现在可以指定delegated选项。 如果此选项设立为true ,则 KMIP提供商在本地执行数据密钥的加密和解密,确保加密密钥永远不会离开 KMIP服务器。

  • 在 MongoDB\Collection::createIndex() 和 MongoDB\Collection::createSearchIndexes() 方法的搜索索引规范中添加 type 选项。此更改允许您以编程方式创建MongoDB Vector Search 搜索索引。要学习;了解更多信息和查看示例,请参阅MongoDB搜索索引指南。

有关此版本中更改的更多信息,请参阅Github上的v1.20发布说明。

此发布的PHP库不包含重大更改,添加此库是为了与PHP扩展保持版本奇偶校验。

要学习;了解有关此发布的更多信息,请参阅Github上的 v1.18 发布说明。

  • 引入新的“编解码器” API ,用于在BSON与PHP对象之间进行转换。 有关此功能的更多信息,请参阅编解码器教程。

  • 向库中添加 MongoDB\add_logger() 和 MongoDB\remove_logger() 功能。这些函数允许应用程序注册 PSR-3 日志记录器,以接收驱动程序发出的日志信息。以前,日志只能通过扩展的 mongodb.debug INI 设置获得。

  • 引入新的MongoDB\Collection方法来创建和管理MongoDB搜索索引。可以使用 $search 聚合管道阶段查询 MongoDB 搜索索引,该库的所有版本都支持该阶段。要学习有关MongoDB 搜索索引和 $search聚合阶段的详细信息,请参阅 MongoDB 搜索索引文档和 $ 搜索。

  • 将mongodb扩展要求升级到1.17.0 。 对PHP 7.2和7.3的支持已删除,该库现在需要PHP 7.4或更高版本。

要学习;了解有关此发布的更多信息,请参阅Github上的 v1.17 发布说明。