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

MongoDB\Database::modifyCollection()

1.4版本新增。

MongoDB\Database::modifyCollection()

根据指定的$collectionOptions修改collection或视图。

function modifyCollection( string $collectionName, array $collectionOptions, array $options = []): array|object
$collectionName : 细绳
要修改的collection或视图的名称。
$collectionOptions : array
要分配的collection或视图选项。
$options : array

指定所需选项的数组。

名称
类型
说明

comment

混合

使用户可以指定任意注释来帮助通过数据库分析器、currentOp 输出和日志来跟踪操作。

自 MongoDB 4.4 起此选项可用,如果为旧服务器版本指定,则会在执行时导致异常。

1.13版本新增。

会话

与操作相关联的客户端会话。

typeMap

阵列

应用游标的类型映射,决定如何将BSON文档转换为PHP值。默认为数据库的类型映射。

这将用于返回的命令结果文档。

writeConcern

写入用于操作的关注。 默认为数据库的写关注。

包含collMod命令结果文档的数组或对象。

MongoDB\Exception\InvalidArgumentException 用于与参数或选项解析相关的错误。

MongoDB\ 驱动程序\Exception\RuntimeException 用于扩展级别的其他错误(例如连接错误)。

以下示例更改了test数据库中的 TTL collection 的过期时间:

<?php $db = (new MongoDB\Client)->test; $result = $db->modifyCollection('users', [ 'keyPattern' => ['lastAccess' => 1], 'expireAfterSeconds' => 1000]); var_dump($result);

而输出将类似如下所示:

object(stdClass)#2779 { ["expireAfterSeconds_old"]=> int(3) ["expireAfterSeconds_new"]=> int(1000) ["ok"]=> float(1)}
  • MongoDB手册中的collMod命令参考