The MongoDB class
Introduction
Instances of this class are used to interact with a database. To get a database:
<?php
$m = new Mongo(); // connect
$db = $m->selectDB("example");
?>
A few unusual, but valid, database names: "null", "[x,y]", "3", "\"", "/".
Unlike collection names, database names may contain "$".
Class synopsis
Predefined Constants
MongoDB Log Levels
-
MongoDB::PROFILING_OFF
0 - Profiling is off.
-
MongoDB::PROFILING_SLOW
1 - Profiling is on for slow operations (>100 ms).
-
MongoDB::PROFILING_ON
2 - Profiling is on for all operations.
Fields
-
w
1 -
The number of servers to replicate a change to before returning success. Inherited by instances of MongoCollection derived from this. w functionality is only available in version 1.5.1+ of the MongoDB server and 1.0.8+ of the driver.
w is used whenever you perform a "safe" operation (MongoCollection::insert(), MongoCollection::update(), MongoCollection::remove(), MongoCollection::save(), and MongoCollection::ensureIndex() all support safe options). With the default value (1), a safe operation will return once the database server has the operation. If the server goes down before the operation has been replicated to a slave, it is possible to lose the operation forever. Thus, you can specify w to be higher than one and guarantee that at least one slave has the operation before it is considered successful.
For example, if w is 2, the main server and one slave must have a record of the operation or the driver will throw a MongoCursorException. It is tempting to set w to the total number of slaves + master, but then if one slave is down the op will fail and an exception will be thrown, so usually w=2 is safest (master+1 slave).
-
wtimeout
10000 -
The number of milliseconds to wait for MongoDB::$w replications to take place. Inherited by instances of MongoCollection derived from this. w functionality is only available in version 1.5.1+ of the MongoDB server and 1.0.8+ of the driver.
Unless wtimeout is set, the server waits forever for replicating to w servers to finish. The driver defaults to waiting for 10 seconds, you can change this value to alter its behavior.
See Also
MongoDB core docs on » databases.
Table of Contents
- MongoDB::authenticate - Log in to this database
- MongoDB::command - Execute a database command
- MongoDB::__construct - Creates a new database
- MongoDB::createCollection - Creates a collection
- MongoDB::createDBRef - Creates a database reference
- MongoDB::drop - Drops this database
- MongoDB::dropCollection - Drops a collection [deprecated]
- MongoDB::execute - Runs JavaScript code on the database server.
- MongoDB::forceError - Creates a database error
- MongoDB::__get - Gets a collection
- MongoDB::getDBRef - Fetches the document pointed to by a database reference
- MongoDB::getGridFS - Fetches toolkit for dealing with files stored in this database
- MongoDB::getProfilingLevel - Gets this database's profiling level
- MongoDB::getSlaveOkay - Get slaveOkay setting for this database
- MongoDB::lastError - Check if there was an error on the most recent db operation performed
- MongoDB::listCollections - Get a list of collections in this database
- MongoDB::prevError - Checks for the last error thrown during a database operation
- MongoDB::repair - Repairs and compacts this database
- MongoDB::resetError - Clears any flagged errors on the database
- MongoDB::selectCollection - Gets a collection
- MongoDB::setProfilingLevel - Sets this database's profiling level
- MongoDB::setSlaveOkay - Change slaveOkay setting for this database
- MongoDB::__toString - The name of this database




