saxulum / saxulum-doctrine-mongodb-provider
Saxulum Doctrine MongoDB Provider
Installs: 195 987
Dependents: 2
Suggesters: 0
Security: 0
Stars: 6
Watchers: 2
Forks: 3
Open Issues: 1
pkg:composer/saxulum/saxulum-doctrine-mongodb-provider
Requires
- php: ~7.0|~5.6
- alcaeus/mongo-php-adapter: ^1.1.5
- doctrine/mongodb: ~1.1
- pimple/pimple: >=2.1,<4
- psr/log: ^1.1.0
Requires (Dev)
- phpunit/phpunit: ^5.7.27|^8.1.5
Provides
- ext-mongo: 1.6.14
README
works with plain silex-php
Features
Requirements
- PHP 5.6+
- Doctrine Mongodb 1.0 Beta+
Installation
Through Composer as saxulum/saxulum-doctrine-mongodb-provider.
Example for one connection:
$app->register(new DoctrineMongoDbProvider(), array(
    'mongodb.options' => array(
        'server' => 'mongodb://localhost:27017',
        'options' => array(
            'username' => 'root',
            'password' => 'root',
            'db' => 'admin'
        )
    )
));
Example for one connection with custom ca file:
$app->register(new DoctrineMongoDbProvider(), array(
    'mongodb.options' => array(
        'server' => 'mongodb://localhost:27017',
        'options' => array(
            'username' => 'root',
            'password' => 'root',
            'db' => 'admin'
        ),
        'driverOptions => array(
            'ca_file' => '/some/ca.pem'
        )
    )
));
Example for multiple connections:
$app->register(new DoctrineMongoDbProvider(), array(
    'mongodbs.options' => array(
        'mongo1' => array(
            'server' => 'mongodb://localhost:27017',
            'options' => array(
                'username' => 'root',
                'password' => 'root',
                'db' => 'admin'
            )
        ),
        'mongo2' => array(
            'server' => 'mongodb://localhost:27018',
            'options' => array(
                'username' => 'root',
                'password' => 'root',
                'db' => 'admin'
            )
        )
    )
));
Usage
Example for one connection:
$document = array('key' => 'value');
$app['mongodb']
    ->selectDatabase('saxulum-doctrine-mongodb-provider')
    ->selectCollection('sample')
    ->insert($document)
;
Example for multiple connections:
$document = array('key' => 'value');
$app['mongodbs']['mongo1']
    ->selectDatabase('saxulum-doctrine-mongodb-provider')
    ->selectCollection('sample')
    ->insert($document)
;
Copyright
- Dominik Zogg [email protected]
- Fabien Potencier [email protected] (DoctrineServiceProvider, Logger)
- Kris Wallsmith [email protected] (Logger)