MongoDB PHP 扩展

🌙
手机阅读
本文目录结构

MongoDB PHP 扩展

本教程将向大家介绍如何在 Linux、window、Mac 平台上安装 MongoDB 扩展。

Linux 上安装 MongoDB PHP 扩展

在终端上安装

你可以在 Linux 中执行以下命令来安装 MongoDB 的 PHP 扩展驱动

$ sudo pecl install mongodb

使用 php 的 pecl 安装命令必须保证网络连接可用以及 root 权限。

安装手册

如果你想通过源码来编译扩展驱动。你必须手动编译源码包,这样做的好是最新修正的 bug 包含在源码包中。

你可以在 PHP 官网上下载 MongoDB PHP 驱动包,下载地址:http://pecl.php.net/package/mongodb

完整安装命令如下:

$ wget http://pecl.php.net/get/mongodb-1.5.2.tgz
$ cd /mongodb-1.5.2
$ phpize
$ ./configure
$ make && make install

如果你的 php 是自己编译的,则安装方法如下(假设是编译在 /usr/local/php 目录中):

$ wget http://pecl.php.net/get/mongodb-1.5.2.tgz
$ cd /mongodb-1.5.2
$ /usr/local/php/bin/phpize
$ ./configure --with-php-config=/usr/local/php/bin/php-config
$ make && make install

安装成功后,会有类似以下安装目录信息输出:

...
Installing shared extensions:     /usr/lib/php/extensions/debug-non-zts-20151012/

执行以上命令后,你需要修改 php.ini 文件,在 php.ini 文件中添加 mongo 配置,配置如下:

extension_dir=/usr/lib/php/extensions/debug-non-zts-20151012/
extension=mongodb.so

**注意:**你需要指明 extension_dir 配置项的路径。

可以通过以下命令查看目录地址:

$ php -i | grep extension_dir
  extension_dir => /usr/lib/php/extensions/debug-non-zts-20151012 =>
                   /usr/lib/php/extensions/debug-non-zts-20151012

Window 上安装 MongoDB PHP 扩展

PECL 上已经提供了用于 Window 平台的预编译 php mongodb 驱动二进制包(下载地址: https://pecl.php.net/package/mongodb),你可以下载与你 php 对应的版本,但是你需要注意以下几点问题:

  • VC6 是运行于 Apache 服务器
  • Thread safe(线程安全)是以模块形式运行在 Apache 上,如果你以 CGI 的模式运行 PHP,请选择非线程安全模式(non-thread safe)。
  • VC9 是运行于 IIS 服务器上。
  • 下载完你需要的二进制包后,解压压缩包,将 php_mongodb.dll 文件添加到你的 PHP 扩展目录中(ext)。ext 目录通常在 PHP 安装目录下的 ext 目录。

打开 php 配置文件 php.ini 添加以下配置:

extension=php_mongodb.dll

重启服务器。

通过浏览器访问 phpinfo,如果安装成功,就会看到类型以下的信息:

MAC 中安装 MongoDB PHP 扩展驱动

你可以使用 autoconf 安装 MongoDB PHP 扩展驱动。

你可以使用 Xcode 安装 MongoDB PHP 扩展驱动。

如果你使用 XAMPP,你可以使用以下命令安装 MongoDB PHP 扩展驱动:

sudo /Applications/XAMPP/xamppfiles/bin/pecl install mongo

如果以上命令在 XMPP 或者 MAMP 中不起作用,你需要在 Github 上下载兼容的预编译包。

然后添加 extension=mongodb.so 配置到你的 php.ini 文件中。

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了