(PECL mongo >=1.0.5)
MongoCursor::info — カーソルの作成と走査に関する情報を取得する
これは、カーソルの反復処理が始まる前でも後でもコールすることができます。
この関数にはパラメータはありません。
このカーソルの namespace、batch size、limit、skip、flags、query そして fields を返します。 カーソルの反復処理が始まっている場合は、接続などの追加情報も含まれます。
| バージョン | 説明 |
|---|---|
| 1.1.0 | 多くのフィールドが追加されました。id (カーソル ID)、 at (現在のドキュメントを表すドライバのカウンタ)、 numReturned (サーバーが現在のバッチで返した件数)、そして server (クエリの送信先のサーバー。 優先読み込み と組み合わせると便利) などです。 |
| 1.0.10 | started_iterating フィールドが追加されました。boolean で、 このカーソルがクエリ実行前か実行後かを返します。 |
例1 MongoCursor::info() の例
<?php
$m = new MongoClient();
$cursor = $m->test->foo->find(array("x" => 4), array("y" => 0));
echo "Before iteration started:\n";
var_dump($cursor->info());
echo "\nAfter iteration started:\n";
$cursor->rewind();
var_dump($cursor->info());
?>
上の例の出力は、 たとえば以下のようになります。
Before iteration started:
array(8) {
["ns"]=>
string(8) "test.foo"
["limit"]=>
int(0)
["batchSize"]=>
int(0)
["skip"]=>
int(0)
["flags"]=>
int(0)
["query"]=>
array(1) {
["x"]=>
int(4)
}
["fields"]=>
array(1) {
["y"]=>
int(0)
}
["started_iterating"]=>
bool(false)
}
After iteration started:
array(15) {
["ns"]=>
string(8) "test.foo"
["limit"]=>
int(0)
["batchSize"]=>
int(0)
["skip"]=>
int(0)
["flags"]=>
int(0)
["query"]=>
array(1) {
["x"]=>
int(4)
}
["fields"]=>
array(1) {
["y"]=>
int(0)
}
["started_iterating"]=>
bool(true)
["id"]=>
int(0)
["at"]=>
int(0)
["numReturned"]=>
int(1)
["server"]=>
string(25) "localhost:27017;-;.;26450"
["host"]=>
string(9) "localhost"
["port"]=>
int(27017)
["connection_type_desc"]=>
string(10) "STANDALONE"
}