5

次のmongodbシェルが行う作業を行うphp構文は何ですか?

> db.SoManySins.find({},{"_id":0,"FactoryCapacity":1})
4

2 に答える 2

19

MongoDB PHP ドライバー関数は、対応するシェルと同様の名前が付けられているため、この場合はMongoCollection::find()を使用します。PHP ドライバーは、連想配列を使用してフィールドを MongoDB クエリにマップします。

PHPMongoCollection::find()ドキュメント ページには現在、プロジェクションの例が含まれていないため、完全を期すために以下に 1 つ追加しました。

<?php
    $m = new MongoClient();
    $db = $m->selectDB('test');
    $collection = new MongoCollection($db, 'SoManySins');

    // Search criteria
    $query = array();

    // Projection (fields to include)
    $projection =  array("_id" => false, "FactoryCapacity" => true);

    $cursor = $collection->find($query, $projection);
    foreach ($cursor as $doc) {
        var_dump($doc);
    }
?>

プロジェクション仕様については、シェルのように 1/0 (包含/除外) mongo、または同等の true/false 定数を使用できます。

PHP MongoDB ドライバー ドキュメントのチュートリアルを実行するだけでなく、10gen Web サイトでアーカイブされたプレゼンテーションの一部を参照することも非常に価値があります。

于 2013-04-14T09:17:56.677 に答える