salamtam / mongo-query-php
for query mongodb
Installs: 92
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 2
Forks: 0
Open Issues: 0
Type:vcs
Requires
- mongodb/mongodb: ^1.1
This package is auto-updated.
Last update: 2024-04-25 05:59:55 UTC
README
for Query data from MongoDB
#Usage
##Initial setup
-
Install composer.
curl -s http://getcomposer.org/installer | php
-
Create composer.json containing:
{ "require" : { "salamtam/mongo-query-php" : "^1.0" } }
-
Run
./composer.phar install
-
Keep up-to-date:
./composer.phar update
##Example 1
Query with URL
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'url' => 'mongodb://localhost:27017', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = [ 'name' => 'salamtam' ]; /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* query database */ $cursor = $db->query($filter); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }
##Example 2
Query with basic authentication
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'host' => 'localhost', 'port' => '27017', 'user' => 'root', 'pass' => '', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = [ 'name' => 'salamtam' ]; /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* query database */ $cursor = $db->query($filter); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }
##Example 3
Query with multi filter
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'url' => 'mongodb://localhost:27017', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = json_decode('{"name":"salamtam","created_at":{"$gte":1499533200000}}', true); /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* query database */ $cursor = $db->query($filter); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }
##Example 4
Query with multi filter and sort
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'url' => 'mongodb://localhost:27017', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = [ 'name' => 'salamtam', 'created_at' => [ '$gte' => 1499533200000, ], ]; $sort = [ 'sort' => [ 'created_at' => -1 ], ]; /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* query database */ $cursor = $db->query($filter, $sort); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }
##Example 5
Aggregate with URL
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'url' => 'mongodb://localhost:27017', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = [ '$match' => [ 'name' => 'salamtam' ] ]; /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* aggregate database */ $cursor = $db->aggregate($filter); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }
##Example 6
Aggregate with filter
require_once __DIR__ . '/vendor/autoload.php'; use MongoQueryPHP\MongoQueryPHP; /* set config */ $config = [ 'url' => 'mongodb://localhost:27017', 'database' => 'test', 'collection' => 'member' ]; /* set query (filter) */ $filter = json_decode('[{"$match":{"name":"salamtam","created_at":{"$gte":1499533200000}}}]', true); /* connect database */ $db = new MongoQueryPHP($config); $db->setDatabase($config['database'])->setCollection($config['collection']); /* aggregate database */ $cursor = $db->aggregate($filter); /* result */ foreach ($cursor as $doc) { echo json_encode($doc) . PHP_EOL; break; }