ANNOUNCEMENT: Voyage AI joins MongoDB to power more accurate and trustworthy AI applications on Atlas.
Learn more
Docs Menu

MongoDB\Collection::listIndexes()

MongoDB\Collection::listIndexes()

このコレクションのすべてのインデックスに関する情報を返します。

function listIndexes(array $options = []): MongoDB\Model\IndexInfoIterator
$options : 配列

必要なオプションを指定する配列。

名前
タイプ
説明

comment

混合

データベースプロファイラcurrentOp出力、およびログから操作を追跡するのに役立つ任意のコメントを指定できるようにします。

このオプションは MongoDB 4.4 以降で使用可能であり、古いサーバー バージョンで指定すると実行時に例外が発生します。

バージョン 1.13 の新機能

maxTimeMS

integer

カーソルに対する情報処理操作の累積時間制限(ミリ秒単位)。 MongoDB は、次の割り込みポイントが最も近い時点で操作を中止します。

セッション

操作に関連付けるクライアント セッション。

バージョン 1.3 で追加

MongoDB\Model\IndexInfoIteratorMongoDB\Model\IndexInfoコレクションの各インデックスの オブジェクトを含むトラバース可能な 。

パラメータまたはオプションの解析に関連するエラーは、 MongoDB\Exception\InvalidArgumentException

MongoDB\Driver\Exception\RuntimeException 拡張レベルのその他のエラー(例:)。

次の例では、 testデータベース内のrestaurantsコレクションのすべてのインデックスを一覧表示します。

<?php
$collection = (new MongoDB\Client)->test->restaurants;
foreach ($collection->listIndexes() as $index) {
var_dump($index);
}

出力は次のようになります。

object(MongoDB\Model\IndexInfo)#8 (4) {
["v"]=>
int(1)
["key"]=>
array(1) {
["_id"]=>
int(1)
}
["name"]=>
string(4) "_id_"
["ns"]=>
string(16) "test.restaurants"
}
object(MongoDB\Model\IndexInfo)#12 (4) {
["v"]=>
int(1)
["key"]=>
array(1) {
["cuisine"]=>
float(-1)
}
["name"]=>
string(10) "cuisine_-1"
["ns"]=>
string(16) "test.restaurants"
}
object(MongoDB\Model\IndexInfo)#8 (4) {
["v"]=>
int(1)
["key"]=>
array(1) {
["borough"]=>
float(1)
}
["name"]=>
string(9) "borough_1"
["ns"]=>
string(16) "test.restaurants"
}