MongoCollection::count

(PECL mongo >=0.9.0)

MongoCollection::countコレクション内のドキュメント数を数える

説明

public MongoCollection::count ([ array $query = array() [, array $options = array() ]] ) : int

パラメータ

query

マッチさせるフィールドを持つ連想配列あるいはオブジェクト。

options

インデックス作成用のオプションの配列。現在使えるオプションは、以下のとおりです。

名前 説明
hint mixed

クエリに用いるインデックス。文字列を渡すと、インデックス名として扱います。 配列やオブジェクトを渡した場合は、インデックスの作成に使う仕様 (MongoCollection::createIndex() の最初の引数) に対応します。

このオプションは、MongoDB 2.6 以降で使えます。
limit integer マッチしたドキュメントを返す件数の上限。
maxTimeMS integer

累積処理時間 (待ち時間は含まない) の上限を、ミリ秒単位で指定します。 この時間内に処理が完了しなかった場合は、 MongoExecutionTimeoutException をスローします。

このオプションは、MongoDB 2.6 以降で使えます。
skip integer マッチしたドキュメントのうち、結果を返す前に読み飛ばすドキュメントの数。

返り値

query にマッチするドキュメントの数を返します。

エラー / 例外

エラーが発生してサーバーがコマンドを実行できなかった場合は MongoResultException をスローします。

maxTimeMS を超えたためにコマンドが失敗した場合は MongoExecutionTimeoutException をスローします。

変更履歴

バージョン 説明
1.6.0 二番目のパラメータが配列 options に変わりました。 limitskip を二番目、三番目のパラメータとして渡す方法は、非推奨になりました。
1.0.7 limit および skip が それぞれ二番目、三番目のパラメータとして追加されました。

例1 MongoCollection::count() の例

<?php

$collection
->insert(array('x'=>1));
$collection->insert(array('x'=>2));
$collection->insert(array('x'=>3));

var_dump($collection->count());
var_dump($collection->count(array('x'=>1)));

?>

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

int(3)
int(1)