1. Introduction to MongoDB
MongoDB (the name comes from "humongous") is a scalable, high-performance, open source, schema-free, document-oriented database that combines the advantages of document databases, key-value storage and relational databases. Official site: http://www.mongodb.org/, MongoDB features:
•Document-oriented storage (JSON-like data schema is simple and powerful)
•Dynamic query
•Full index support, extended to internal objects and embedded arrays
•Query record analysis
•Fast , in-place updates
• Efficient storage of binary large objects (such as photos and videos)
• Replication and failover support
• Auto-Sharding supports cloud-level scalability
• MapReduce supports complex Aggregation
•Business support, training and consulting
2. Install MongoDB
Installing MongoDB is very simple. You only need to download the compressed package, decompress it and run the command. Download address: http://www.mongodb.org/downloads. This article is for the windows platform. MongoDB running command: >bin/mongod. Tip: First create a folder to store data. MongoDB’s default data storage directory is /data/db/ (or c:datadb). Of course, you can also change it to a different directory by specifying the --dbpath parameter, eg:
>bin/mongod --dbpath=d:mgdatadb
3. Install MongoDB PHP extension
Download the PHP extension according to your PHP version: http://www.php.net/manual/en/mongo. installation.php#mongo.installation.windows, tips:
1. VC6 is suitable for Apache, VC9 is suitable for IIS;
2. Thread safe is suitable for PHP running in module mode, and Non-thread safe is suitable for CGI running mode.
Modify php.ini, add: extension=php_mongo.dll, and restart the web server.
4. PHP example
1. Connect to Mongo server
//MongoDB has a username and password and specifies the database blog
$conn = new Mongo("mongodb://${username}:${password}@localhost/blog");
//Multiple Server
$conn = new Mongo("mongodb://localhost:27017,localhost:27018");
?>
$collection = $db->users;
?>
3. CRUD
//Newly added
$user = array('name' => 'caleng', 'email' => 'admin@admin.com');
$collection->insert($user);
//Modify
$newdata = array( '$set' => array("email" => "test@test.com"));
$collection->update(array("name" => "caleng"), $newdata );
//Delete
$collection->remove(array('name'=>'caleng'), array("justOne" => true));
//Search
$cursor = $collection->find();
var_dump($cursor);
//Find one
$user = $collection->findOne(array('name' => ; 'caleng'), array('email'));
var_dump($user);
?>
4. Close the connection
$conn-> ;close();
?>