【转】ubuntu 下安装mongodb php 拓展的方法
时间:2022-03-15 06:45
按照上面的方法安装成功之后,写一个 mongodb 的php测试脚本,用来测试是否可以 正确连接上mongodb ,并查询结果。
参考:
参考:
<?php $mongo = new \MongoDB\Driver\Manager(‘mongodb://joe:asdf@127.0.0.1:27017/test‘); $id = new \MongoDB\BSON\ObjectId("5a914df2f69030dd45832355"); $filter = [‘_id‘ => $id]; //$filter = []; $options = []; $query = new \MongoDB\Driver\Query($filter, $options); $rows = $mongo->executeQuery(‘test.mycollection‘, $query); //var_dump($rows); foreach ($rows as $document) { var_dump($document);
--------------------------------------------------------------------------------------------------------------------------
linux下使用php开发mongodb程序,需要安装php驱动,安装步骤如下:
注:
笔者(habadog1203)php的版本:5.2.10
php目录:/home/work/php5210/
(1)去github下载mongo-php-driver
地址是:
笔者下载的版本是:mongodb-mongo-php-driver-1.2.2-23-g820dd82.tar.gz
(2)解压到php的ext目录下
笔者解压路径是:/home/work/php5210/ext/mongodb-mongo-php-driver-820dd82
(3)到解压路径下执行phpize
命令为:
cd /home/work/php5210/ext/mongodb-mongo-php-driver-820dd82
/home/work/php5210/bin/phpize
目的是生成configure文件,请务必确认configure文件的生成
(4)安装mongo.so
命令为:
cd /home/work/php5210/ext/mongodb-mongo-php-driver-820dd82
./configure
make
make install
目的是生成mongo.so,请务必确认mongo.so的生成
笔者的extensions目录为:/home/work/php5210/lib/php/extensions/no-debug-non-zts-20060613/
其下正确生成了mongo.so
(5)修改php.ini,添加mongo.so的扩展
在php.ini里加入以下配置
extension=mongo.so
大功告成,可写程序测试与mongodb的交互了。
注意点:
(1)执行phpize需要系统安装autoconf,否则会提示”Cannot find autoconf”,症状为:
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
解决方案为:安装autoconf
用root账号执行以下命令即可:
yum -y install autoconf
以上命令共安装两个软件包
imake-1.0.2-3.i386.rpm
autoconf-2.59-12.noarch.rpm
当然,不用yum的话,也可以手动安装,命令为
cd /usr/src
wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
tar -zvxf m4-1.4.9.tar.gz
cd m4-1.4.9/
./configure && make && make install
cd ../
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
tar -zvxf autoconf-2.62.tar.gz
cd autoconf-2.62/
./configure && make && make install
(2)安装完autoconf后,phpize执行完能生成configure文件,执行./configure时,可能会报以下错误:
configure: error: Cannot find php-config. Please use –with-php-config=PATH
因为找不到php-config(例如,php是别处编译生成,拷贝到本地的)
加入–with-php-config参数即可,如下:
./configure –with-php-config=/home/work/php5210/bin/php-config
(3)以上步骤参见于php官网: