上一篇介绍了如何安装和简单配置MongoDB,现在我们试着使用PHP语言操作它。

安装mongodb扩展

为PHP安装mongodb扩展有多种方式,这里我们依旧使用最简单方式,即pecl安装。其余请参考官方文档

1.执行如下命令安装:

1
sudo pecl install mongodb

待编译完毕,出现如下提示则安装成功

1
2
3
4
5
Build process completed successfully
Installing '/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/mongodb.so'
install ok: channel://pecl.php.net/mongodb-1.2.9
configuration option "php_ini" is not set to php.ini location
You should add "extension=mongodb.so" to php.ini

2.在php.ini配置文件中加入mongodb扩展:

1
extension=mongodb.so # 添加到`php.ini`配置文件里

3.重启php-fpm

4.执行命令php -m | grep mongodb查看扩展

用PHP搞搞它

在搞它之前,我们先要安装一个官方提供的MongoDB-PHP库。使用composer包管理工具进行安装,若未安装composer,先移步到官方文档安装。

1.找片干净的地方,新建个目录,这里取名为php-mongodb,进到目录里面并执行如下命令:

1
composer require mongodb/mongodb

2.执行完毕后,目录里多了一些东西,先不去管它们。新建一个文件,这里取名为test.php,编辑内容:

1
2
3
4
<?php
require_once __DIR__ . "/vendor/autoload.php";
$collection = new MongoDB\Client;
var_dump($collection);

3.执行test.php文件,看看是啥结果

1
php -f test.php

输出如下结果:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class MongoDB\Client#3 (4) {
public $manager =>
class MongoDB\Driver\Manager#2 (2) {
public $uri =>
string(20) "mongodb://127.0.0.1/"
public $cluster =>
array(0) {
}
}
public $uri =>
string(20) "mongodb://127.0.0.1/"
public $typeMap =>
array(3) {
'array' =>
string(23) "MongoDB\Model\BSONArray"
'document' =>
string(26) "MongoDB\Model\BSONDocument"
'root' =>
string(26) "MongoDB\Model\BSONDocument"
}
public $writeConcern =>
class MongoDB\Driver\WriteConcern#4 (0) {
}
}

嗯(一脸沉思状.jpg),出来这一坨东西,看来用PHP搞它没问题了。