MongoDB\Collection::count()
自版本 1.4 起已弃用。
定义
参数
$filter
: array|object- 指定要计数的文档的筛选条件。
$options
: array指定所需选项的数组。
名称类型说明排序规则数组|对象comment混合提示字符串|数组|对象要使用的索引。将索引名称指定为字符串或将索引键模式指定为文档。如果指定,查询系统将只考虑使用提示索引的计划。
版本 1.2 中的更改: 如果提供了文档,则会按原样传递给命令。以前,该库会将键模式转换为索引名称。
limit整型要返回的匹配文档的最大数量。maxTimeMS整型处理游标操作的累计时间限制(以毫秒为单位)。MongoDB 最早会在中断点之后中止操作。
事务外的readPreference读取要用于操作的偏好。 默认为集合的读取偏好。
会话与操作相关联的客户端会话。
1.3 版本中的新增功能。
跳过整型返回结果之前要跳过的匹配文档数。
Return Values
与筛选条件匹配的文档数量。
错误/异常
MongoDB\Exception\UnexpectedValueException
,如果来自服务器的命令响应格式错误。
MongoDB\Exception\UnsupportedException
,如果所选服务器使用了选项但不支持选项(例如collation
、readConcern
、writeConcern
)。
MongoDB\Exception\InvalidArgumentException
用于与参数或选项解析相关的错误。
MongoDB\ 驱动程序\Exception\RuntimeException 对于扩展级别的其他错误(例如连接错误)。
行为
此方法已弃用,并且无法在ACID 事务中执行。 它一直是使用计数命令来实现的。 count
命令的行为因传递给它的选项而异,并且可能会也可能不会提供准确的计数。 如果未提供查询过滤, count
命令将使用集合元数据提供估计值。 即使提供了查询过滤,如果存在数据块文档或正在进行数据段迁移, count
命令也可能会返回不准确的分片分片集群结果。 MongoDB\Collection::countDocuments()
方法完全避免了这些分片集群问题。
在评估查询条件时,MongoDB 会根据自己 的 比较规则来BSON types 比较类型和值,这不同于 的PHP 比较 和 类型杂技 规则。匹配特殊BSON类型时,查询条件应使用相应的 BSON类 在扩展(例如使用 MongoDB\ BSON\ObjectId 以匹配 ObjectId )。