sql >> データベース >  >> NoSQL >> MongoDB

別のPHPクラスからMongoDBに接続するにはどうすればよいですか?

    同じ接続文字列で「newMongo()」を使用するだけで、同じ接続が使用されますが、同じ接続オブジェクトを取得するには、Mongo接続クラスをシングルトンでラップすることをお勧めします。おそらく次のようなものです:

    <?php
    class myprojMongoSingleton
    {
        static $db = NULL;
    
        static function getMongoCon()
        {
            if (self::$db === null)
            {
                try {
                    $m = new Mongo('mongodb://'.$MONGO['servers'][$i]['mongo_host'].':'.$MONGO['servers'][$i]['mongo_port']);
    
                } catch (MongoConnectionException $e) {
                    die('Failed to connect to MongoDB '.$e->getMessage());
                }
                self::$db = $m;
            }
    
            return self::$db;
        }
    }
    

    そして、アプリケーション内の他の場所で次のように呼び出します。

    $m = myprojMongoSingleton::getMongoCon();
    


    1. 長いクエリ文字列をMongoDBに直接解析する(SQLの場合と同じように)

    2. MongoDB Aggregation PHP、時間ごとのグループ化

    3. NodeJS、マングース:マングースを使用して関連データを取得する方法

    4. 特定のコレクションのレコード数を制限する方法はありますか