MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come connettersi a MongoDB da un'altra classe PHP?

Puoi semplicemente usare un "new Mongo()" con la stessa stringa di connessione e utilizzerà la stessa connessione, ma ti suggerisco di avvolgere un singleton attorno alla tua classe di connessione Mongo per recuperare lo stesso oggetto di connessione. Probabilmente qualcosa come:

<?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;
    }
}

E poi chiamalo in qualsiasi altro punto della tua applicazione con:

$m = myprojMongoSingleton::getMongoCon();