一、环境信息
| 配置 | 信息 |
|---|---|
| PHP版本 | PHP Version 7.4.4 |
| Loaded Configuration File | /usr/local/etc/php/7.4/php.ini |
足够了,MAC相对比较简单,需要知道php.ini的路径。
二、下载压缩包
进入mongodb扩展包下载管理
与windows不同的是,这里是需要点击对应版本的
.taz链接下载。
比如,我的版本比较新,这里我们下载mongodb-1.9.1版本,我们需要点击mongodb-1.9.1.tgz (1255.8kB)对应的链接进行下载。
三、编译安装
-
解压下载文件 解压下载文件并放置到
/usr/local/目录中 -
进入mongodb目录
cd mongodb-1.5.5 -
执行
phpize扩展php扩展模块phpize会有以下输出
AppledeMacBook-Pro:mongodb-1.9.1 houxin$ phpize Configuring for: PHP Api Version: 20190902 Zend Module Api No: 20190902 Zend Extension Api No: 320190902如果你的提示
Cannot find config.m4.,说明你的目录层级不对,确认当前目录下是否还嵌套了一层目录。 -
软件编译
./configure正常的情况会有以下的输出
AppledeMacBook-Pro:mongodb-1.9.1 houxin$ ./configure checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for a sed that does not truncate output... /usr/bin/sed checking for pkg-config... /usr/local/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for cc... cc ... config.status: creating /usr/local/mongodb-1.9.1/src/libmongoc/src/libmongoc/src/mongoc/mongoc-version.h config.status: creating /usr/local/mongodb-1.9.1/src/libmongocrypt/src/mongocrypt-config.h config.status: creating /usr/local/mongodb-1.9.1/src/libmongocrypt/src/mongocrypt.h config.status: creating config.h -
安装
make && make install正确的情况,会有以下的输出
... Build complete. Don't forget to run 'make test'. Installing shared extensions: /usr/local/Cellar/php/7.4.4/pecl/20190902/ -
检测扩展是否成功安装
mdfind -name mongodb.so实例如下:
AppledeMacBook-Pro:mongodb-1.9.1 houxin$ mdfind -name mongodb.so /usr/local/mongodb-1.9.1/modules/mongodb.so /usr/local/lib/php/pecl/20190902/mongodb.so
四、修改PHP配置文件
根据环境的信息可知,php.ini的路径是/usr/local/etc/php/7.4/php.ini。
修改php.ini,添加mongodb.so,只需要添加mongodb即可。
extension=mongodb
五、重启PHP
我本地使用的是valet,所以,我的重启操作是:
valet restart
示例:
AppledeMacBook-Pro:mongodb-1.9.1 houxin$ valet restart
Restarting dnsmasq...
Restarting php...
Restarting nginx...
Valet services have been restarted.
再次打开phpinfo,发现mongodb扩展已经加载。