Mongo::__toString
MongoDB::authenticate
Core Classes
PHP Manual

# MongoDB クラス

## 導入

このクラスのインスタンスを使用してデータベースとのやりとりを行います。 データベースを取得するには、このようにします。

`<?php
$m = new Mongo(); // 接続
$db = $m->selectDB("example");
?>`
データベース名には、ASCII の範囲内でほとんどの文字を使うことができます。 しかし、" " や "." を使うことはできず、空文字列にすることもできません。

あまり一般的ではありませんが、 "null"、"[x,y]"、"3"、"\""、"/" などは正しい形式のデータベース名です。

コレクション名とは異なり、データベース名には "$" を含めてもかまいません。

## クラス概要

MongoDB
MongoDB {
/* 定数 */
const int MongoDB::PROFILING_OFF = 0 ;
const int MongoDB::PROFILING_SLOW = 1 ;
const int MongoDB::PROFILING_ON = 2 ;
/* フィールド */
public integer $w = 1 ;
public integer $wtimeout = 10000 ;
/* メソッド */
public array authenticate ( string `$username` , string `$password` )
public array command ( array `$data` )
__construct ( Mongo `$conn` , string `$name` )
public MongoCollection createCollection ( string `$name` [, bool `$capped` = `FALSE` [, int `$size` = 0 [, int `$max` = 0 ]]] )
public array createDBRef ( string `$collection` , mixed `$a` )
public array drop ( void )
public array dropCollection ( mixed `$coll` )
public array execute ( mixed `$code` [, array `$args` = array() ] )
public bool forceError ( void )
public MongoCollection __get ( string `$name` )
public array getDBRef ( array `$ref` )
public MongoGridFS getGridFS ([ string `$prefix` = "fs" ] )
public int getProfilingLevel ( void )
public array lastError ( void )
public array listCollections ( void )
public array prevError ( void )
public array repair ([ bool `$preserve_cloned_files` = `FALSE` [, bool `$backup_original_files` = `FALSE` ]] )
public array resetError ( void )
public MongoCollection selectCollection ( string `$name` )
public int setProfilingLevel ( int `$level` )
public string __toString ( void )
}

## 定義済み定数

## MongoDB ログレベル

`MongoDB::PROFILING_OFF`
`0`
  プロファイリングをオフにします。
`MongoDB::PROFILING_SLOW`
`1`
  襲い接続 (>100 ms) に対するプロファイリングをオンにします。
`MongoDB::PROFILING_ON`
`2`
  すべての操作に対するプロファイリングをオンにします。

## フィールド

w
1

  成功を返す前に変更をレプリケートするサーバの数。このクラスの派生クラスである MongoCollection に継承されます。 w の機能が使えるのは、バージョン 1.5.1 以降の MongoDB サーバと バージョン 1.0.8 以降のドライバを使っている場合のみです。

  w は、"安全な" 操作をするときに常に用いられます (MongoCollection::insert() や MongoCollection::update()、 MongoCollection::remove()、 MongoCollection::save() そして MongoCollection::ensureIndex() はすべて、安全なオプションをサポートしています)。 デフォルト値 (1) の場合、安全な操作は、 データベースサーバでの操作が一度成功すれば結果を返します。 スレーブへのレプリケーションが完了する前にサーバが落ちてしまうと、 その操作が永遠に失われてしまう可能性があります。そこで w の値を 1 より大きく設定し、 少なくとも一台のスレーブでの操作が完了してからでないと処理が成功したと見なさないようにするのです。

  たとえば w を 2 にすると、メインのサーバ以外に ひとつのスレーブ上で操作が記録されない限り、ドライバは MongoCursorException をスローします。 w の数をマスタと全スレーブの総数に設定したくなるかもしれませんが、 もしそうすると、ひとつのスレーブがダウンしただけで操作が失敗して例外が発生するようになります。 通常は、w=2 (マスタ、そしてスレーブ一台) としておくのがいちばん安全でしょう。

wtimeout
10000

  MongoDB::$w のレプリケーションが完了するまでに待つミリ秒数。 このクラスの派生クラスである MongoCollection に継承されます。 w の機能が使えるのは、バージョン 1.5.1 以降の MongoDB サーバと バージョン 1.0.8 以降のドライバを使っている場合のみです。

  wtimeout を設定しなければ、w のサーバへのレプリケーションが完了するまでずっと待ち続けます。 ドライバのデフォルトは 10 秒ですが、この値を変更して挙動を変えることができます。

## 参考

MongoDB コアドキュメントの » データベース を参照ください。

## 目次

- MongoDB::authenticate — Log in to this database
- MongoDB::command — データベースコマンドを実行する
- MongoDB::__construct — 新しいデータベースを作成する
- MongoDB::createCollection — コレクションを作成する
- MongoDB::createDBRef — データベース参照を作成する
- MongoDB::drop — このデータベースを削除する
- MongoDB::dropCollection — コレクションを削除する [非推奨]
- MongoDB::execute — JavaScript コードをデータベースサーバ上で実行する
- MongoDB::forceError — Creates a database error
- MongoDB::__get — Gets a collection
- MongoDB::getDBRef — データベース参照が指すドキュメントを取得する
- MongoDB::getGridFS — このデータベースに格納されているファイルを扱うためのツールキットを取得する
- MongoDB::getProfilingLevel — このデータベースのプロファイリングレベルを取得する
- MongoDB::lastError — Check if there was an error on the most recent db operation performed
- MongoDB::listCollections — このデータベース内のコレクション一覧を取得する
- MongoDB::prevError — Checks for the last error thrown during a database operation
- MongoDB::repair — このデータベースを修復・圧縮する
- MongoDB::resetError — Clears any flagged errors on the database
- MongoDB::selectCollection — コレクションを取得する
- MongoDB::setProfilingLevel — このデータベースのプロファイリングレベルを設定する
- MongoDB::__toString — このデータベースの名前

Mongo::__toString
MongoDB::authenticate
Core Classes
PHP Manual