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の公式ページに載っています。またこのサイトの別記事でまとめたいと思います。