首页 > 代码库 > PHP+ MongoDB
PHP+ MongoDB
环境:
uname -v#1 SMP Debian 3.2.57-3+deb7u2
php -vPHP 5.4.30-1~dotdeb.1 (cli) (built: Jun 29 2014 23:18:55) Copyright (c) 1997-2014 The PHP GroupZend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
安装MongoDB驱动:
1、安装PECL(PHP 扩展模块)
sudo apt-get install php5-dev php5-cli php-pear
2、通过pecl安装驱动
sudo pecl install mongo
安装过程中有个提示,默认回车即可。
编辑php.ini文件:
sudo vi /etc/php5/fpm/php.ini
在文件最后添加一行:
extension=mongo.so
最后重启php服务:
sudo service php5-fpm restart
测试
新建一个php文件:test.php,内容如下:
<?php$user = array( ‘first_name‘ => ‘MongoDB‘, ‘last_name‘ => ‘Fan‘, ‘tags‘ => array(‘developer‘,‘user‘));// Configuration$dbhost = ‘localhost‘;$dbname = ‘test‘;// Connect to test database$m = new Mongo("mongodb://$dbhost");$db = $m->$dbname;// Get the users collection$c_users = $db->users;// Insert this new document into the users collection$c_users->save($user);?>
这是在mongodb的test数据库中的users表中插入一条记录。按mongodb的说法是,在数据库test的集合users中插入一个文档。
在浏览器中打开这个test.php页面,数据就插入到数据库中了。回到mongodb中看看是否有数据:
mongo testMongoDB shell version: 2.6.3connecting to: test> db.users.findOne(){ "_id" : ObjectId("53b79360b2c88865388b4567"), "first_name" : "MongoDB", "last_name" : "Fan", "tags" : [ "developer", "user" ]}>
是的,可以看到php中的代码已经生效了。
在php中怎么读取mongodb的数据呢?
新建一个test2.php文件,内容如下:
<?php// Configuration$dbhost = ‘localhost‘;$dbname = ‘test‘;// Connect to test database$m = new Mongo("mongodb://$dbhost");$db = $m->$dbname;// Get the users collection$c_users = $db->users;// Find the user with first_name ‘MongoDB‘ and last_name ‘Fan‘$user = array( ‘first_name‘ => ‘MongoDB‘, ‘last_name‘ => ‘Fan‘);$user = $c_users->findOne($user);var_dump($user);?>
在浏览器中打开test2.php就可以看到结果了。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。