技術メモ

PHP7にMongoDBをインストールする

PHPでNoSQLデータベース「MongoDB」を使えるようにするとき、PHPのバージョンによって(PHP7とそれ以前)手順が違います。

その詳細について記事にしておきます。

1.PHP5系の手順

ネットではよくPHP5系の手順が載っています。これをPHP7で実施すると最終的に以下のようなエラーが出てインストールできません。

↓例えばこんな手順:

このサイト様の手順でpecl、pearをインストールします。

次に、MongoDBをインストールします。

[root@localhost ~]# pecl install mongo
WARNING: "pecl/mongo" is deprecated in favor of "channel:///mongodb"
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
pecl/mongo requires PHP (version >= 5.3.0, version <= 5.99.99), installed version is 7.1.23
No valid packages found
install failed

PHPのバージョンは5.3以上の5系ですよって怒られます。。

2.PHP7の手順

Qiitaに載っているこの記事のとおりインストールします。

3.まとめ

PHP7では、peclではなくyumでインストールします。

また、 PHPでのソースの書き方も違います。

↓こんな感じでよくネットに載ってますが、PHP7ではこのクラスは使いません。

// DB接続
$mongo = new Mongo();

PHP7での書き方:

// DB接続
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");

こんな感じで違うクラスを使います。

クエリの書き方はPHPの公式ページに載っています。またこのサイトの別記事でまとめたいと思います。