MongoCursor::explain

(PECL mongo >=0.9.2)

MongoCursor::explain最適化やデバッグの際に有効な、クエリの explain を返す

説明

public MongoCursor::explain ( void ) : array

パラメータ

この関数にはパラメータはありません。

返り値

クエリの explain を返します。

例1 MongoCursor::explain() の例

<?php

$cursor 
$collection->find(array("x"=>1), array("y"));
$cursor->sort(array("z" => 1))->limit(4)->skip(5);

var_dump($cursor->explain());

?>

上の例の出力は、 たとえば以下のようになります。

array(8) {
  ["cursor"]=>
  string(15) "BtreeCursor x_1"
  ["startKey"]=>
  array(1) {
    ["x"]=>
    int(1)
  }
  ["endKey"]=>
  array(1) {
    ["x"]=>
    int(1)
  }
  ["nscanned"]=>
  float(4)
  ["n"]=>
  int(4)
  ["scanAndOrder"]=>
  int(1)
  ["millis"]=>
  int(3)
  ["allPlans"]=>
  array(2) {
    [0]=>
    array(3) {
      ["cursor"]=>
      string(15) "BtreeCursor x_1"
      ["startKey"]=>
      array(1) {
        ["x"]=>
        int(1)
      }
      ["endKey"]=>
      array(1) {
        ["x"]=>
        int(1)
      }
    }
    [1]=>
    array(3) {
      ["cursor"]=>
      string(11) "BasicCursor"
      ["startKey"]=>
      array(0) {
      }
      ["endKey"]=>
      array(0) {
      }
    }
  }
}

エラー / 例外

データベースに接続できない場合に MongoConnectionException をスローします。

参考

MongoDB コアドキュメントの » explain を参照ください。