文档菜单
文档首页
/ / /
PHP 库手册
/ /

MongoDB\Collection::dropIndexes()

本页内容

  • 定义
  • 参数
  • 返回值
  • 错误/异常
  • 示例
  • 另请参阅
MongoDB\Collection::dropIndexes()

删除集合中除在 _id 字段上必需的索引之外的所有索引。

function dropIndexes(array $options = []): array|object
$indexName : string|MongoDB\Model\IndexInfo
要删除的索引的名称或模型对象。通过使用 MongoDB\Collection::listIndexes() 方法查看集合上的现有索引。
$options : array

一个指定所需选项的数组。

名称
类型
描述
注释
混合

允许用户指定一个任意的注释,以帮助通过数据库分析器、当前操作输出和日志来跟踪操作。数据库分析器当前操作日志

此选项自 MongoDB 4.4 起可用,如果指定给旧版本的服务器,将在执行时引发异常。

版本1.13.

maxTimeMS
整数

对游标上操作的处理的总时间限制(以毫秒为单位)。MongoDB 在最早的后续 中断点 处中止操作。

版本1.3.

会话

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

版本1.3.

typeMap
数组

类型映射 应用到游标上,它决定了BSON文档如何转换为PHP值。默认为集合的类型映射。

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

写入关注点

写入关注点用于操作的写入关注点。默认为集合的写入关注点。

在事务中不能为单个操作指定写入关注点。相反,在开始事务时设置writeConcern选项。

一个数组或对象,包含dropIndexes命令的结果文档。返回类型将取决于typeMap选项。

MongoDB\Exception\UnsupportedException 如果使用了所选服务器不支持(例如 collationreadConcernwriteConcern)的选项。

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

MongoDB\Driver\Exception\RuntimeException 对于扩展级别的其他错误(例如连接错误)。

以下示例将删除 test 数据库中 restaurants 集合的所有索引

<?php
$collection = (new MongoDB\Client)->test->restaurants;
$result = $collection->dropIndexes();
var_dump($result);

输出结果将类似

object(MongoDB\Model\BSONDocument)#9 (1) {
["storage":"ArrayObject":private]=>
array(3) {
["nIndexesWas"]=>
int(3)
["msg"]=>
string(38) "non-_id indexes dropped for collection"
["ok"]=>
float(1)
}
}

返回

dropIndex()