Mongo::__toString
MongoDB::authenticate
コアクラス群
PHP Manual

# MongoDB クラス

(PECL mongo >=0.9.0)

## 導入

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

例1 データベースの選択

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

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

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

## クラス概要

MongoDB {
/* 定数 */
const int PROFILING_OFF = 0 ;
const int PROFILING_SLOW = 1 ;
const int PROFILING_ON = 2 ;
/* フィールド */
public integer $w = 1 ;
public integer $wtimeout = 10000 ;
/* メソッド */
public array authenticate ( string `$username` , string `$password` )
public array command ( array `$command` [, array `$options` = array() ] )
public __construct ( MongoClient `$conn` , string `$name` )
public MongoCollection createCollection ( string `$name` [, array `$options` ] )
public array createDBRef ( string `$collection` , mixed `$document_or_id` )
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 getCollectionNames ([ bool `$includeSystemCollections` = false ] )
public array getDBRef ( array `$ref` )
public MongoGridFS getGridFS ([ string `$prefix` = "fs" ] )
public int getProfilingLevel ( void )
public array getReadPreference ( void )
public bool getSlaveOkay ( void )
public array lastError ( void )
public array listCollections ([ bool `$includeSystemCollections` = false ] )
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 bool setReadPreference ( string `$read_preference` [, array `$tags` ] )
public bool setSlaveOkay ([ bool `$ok` = true ] )
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 — このデータベースにログインする
- MongoDB::command — データベースコマンドを実行する
- MongoDB::__construct — 新しいデータベースを作成する
- MongoDB::createCollection — コレクションを作成する
- MongoDB::createDBRef — データベース参照を作成する
- MongoDB::drop — このデータベースを削除する
- MongoDB::dropCollection — コレクションを削除する [非推奨]
- MongoDB::execute — JavaScript コードをデータベースサーバー上で実行する
- MongoDB::forceError — データベースのエラーを作成する
- MongoDB::__get — コレクションを取得する
- MongoDB::getCollectionNames — このデータベースのすべてのコレクションを取得する
- MongoDB::getDBRef — データベース参照が指すドキュメントを取得する
- MongoDB::getGridFS — このデータベースに格納されているファイルを扱うためのツールキットを取得する
- MongoDB::getProfilingLevel — このデータベースのプロファイリングレベルを取得する
- MongoDB::getReadPreference — このデータベースの優先読み込みを取得する
- MongoDB::getSlaveOkay — このデータベースの slaveOkay 設定を取得する
- MongoDB::lastError — 直近のデータベース操作でエラーが発生したかどうかを調べる
- MongoDB::listCollections — このデータベース内のすべての MongoCollection の配列を取得する
- MongoDB::prevError — データベース操作中の直近に発生したエラーを調べる
- MongoDB::repair — このデータベースを修復・圧縮する
- MongoDB::resetError — データベースで発生したすべてのエラーをクリアする
- MongoDB::selectCollection — コレクションを取得する
- MongoDB::setProfilingLevel — このデータベースのプロファイリングレベルを設定する
- MongoDB::setReadPreference — このデータベースの優先読み込みを設定する
- MongoDB::setSlaveOkay — このデータベースの slaveOkay の設定を変更する
- MongoDB::__toString — このデータベースの名前

Mongo::__toString
MongoDB::authenticate
コアクラス群
PHP Manual