MongoDB\Database::listCollectionNames()
新增在版本1.7.
定义
参数
$options
: array指定所需选项的数组。
名称类型描述authorizedCollectionsbooleancommentmixed允许用户指定一个任意注释,以帮助通过数据库分析器、当前操作输出和日志来跟踪操作。
此选项自MongoDB 4.4版起可用。如果为旧版本服务器指定,将在执行时引发异常。
新增在版本1.13.
filterarray|object查询表达式,用于过滤集合列表。
您可以指定集合字段的查询表达式(例如
name
,options
)。maxTimeMS整数游标上处理操作的累计时间限制(毫秒)。MongoDB 会最早在中断点后终止操作。
会话要与此操作关联的客户端会话。
返回值
一个迭代器,提供数据库中每个集合的名称。
示例
以下示例列出 test
数据库中所有的集合
$database = (new MongoDB\Client)->test; foreach ($database->listCollectionNames() as $collectionName) { var_dump($collectionName); }
输出结果如下
string(11) "restaurants" string(5) "users" string(6) "restos"
以下示例列出以 "rest"
开头的 test
数据库中的所有集合
$database = (new MongoDB\Client)->test; $collections = $database->listCollectionNames([ 'filter' => [ 'name' => new MongoDB\BSON\Regex('^rest.*'), ], ]); foreach ($collections as $collectionName) { var_dump($collectionName); }
输出结果如下
string(11) "restaurants" string(6) "restos"
注意
在枚举集合名称时,过滤器表达式只能根据集合的名称和类型进行筛选。没有其他字段可供使用。