MongoDB を PHP から操作する

前回の記事でMongoDBをインストールできたので、PHPからMongoDBにアクセスできるように設定をした。

PHPの拡張モジュールのインストール

PHPからMongoDBにアクセスするために必要な拡張モジュールをインストールする。

$ sudo yum install php-pear
$ sudo pecl install mongo

mongo.iniファイルを新しく作る。

$ sudo vim /etc/php.d/mongo.ini
; Enable mongo extension module
extension=mongo.so

HTTPでMongoDBを操作したい場合は、apacheを再起動する。
$ sudo /etc/init.d/httpd restart

PHPからMongoDBにアクセスする基本操作

まず、PHPからデータの挿入を行ってみる。

$ vim test1.php
<?php
$mongo = new Mongo();
$db = $mongo->selectDB("test");
$col = $db->createCollection("test_col");
$col->insert(array("key" => "value"));

実行してみて、MongoDBに格納されているか確認。

$ php test1.php
$ mongo
> db.test_col.find()
{ "_id" : ObjectId("4ce4cb9b762fc80935000000"), "key" : "value" }

挿入されているのが確認できた。次に、PHPからデータの取得を行ってみる。

$ vim test2.php
<?php
$mongo = new Mongo();
$db = $mongo->selectDB("test");
$col = $db->selectCollection("test_col");
$cur = $col->findOne();

var_dump($cur);

実行してみて、MongoDBからデータが取得できているか確認する。

$ php test2.php
array(2) {
  ["_id"]=>
  object(MongoId)#6 (1) {
    ["$id"]=>
    string(24) "4ce4cb9b762fc80935000000"
  }
  ["key"]=>
  string(5) "value"
}

取得できた。以上が基本的な使い方。

参考

あとは、PHPのMongoのマニュアルを参照すれば何でもできそう。

PHP: Mongo - Manual