环境:mongodb、php7+、CI3.4
为php安装mongodb拓展
注意php7的拓展是:mongodb(点击下载)
- 如果安装的有pecl直接使用
pecl install mongodb
- 如果没有自行请使用phpize、configure、make、make install编译安装
- 修改php.ini文件
添加 extension=mongodb
- 重启php
php -m 查看拓展安装情况
安装mongodb库
- 下载(php7+)
使用Codeigniter官方推荐的一个mongodb库(点击下载)
- 解压并将mongodb库放入你的项目
将压缩包中的application/config/mongo_db.php放到你项目的application/config
将压缩包中的application/libraries/Mongo_db.php放到你项目的application/libraries
- 修改application/config/mongo_db.php中的参数
[‘hostname’] 数据库服务器的主机名
[‘username’] 用户名
[‘password’] 密码
[‘database’] 数据库名称
[‘db_debug’] true/false 是否显示错误
[‘write_concerns’] 默认1: 确认写入操作(参考)
[‘journal’] 默认 true : 日志刷新到磁盘 (参考)
[‘read_preference’] 设置此连接的读取首选项 (参考)
[‘read_preference_tags’] 设置此连接的读取首选项. (参考)
[‘mongo_db’][‘active’] 允许您选择要连接的连接组。默认情况下,只有一个组(“default”组)。
使用mongodb库
- 加载mongdb库
$this->load->library(‘mongo_db’,array(‘activate’=>‘default’),‘mongo_db’);
- 使用
- 简单查询
$res = $this->mongo_db->where(array(‘name’=>‘路飞’))->get(‘user’);
- 数据写入
$res = $this->mongo_db->insert(‘user’,array(‘name’=>‘路飞’,‘desc’=>‘我是要成为海贼王的男人’,‘passwd’=>‘admin888’’));
- 批量写入
$res = $this->mongo_db->batch_insert(‘user’,array(
array(‘name’=>‘路飞One’,‘desc’=>‘我是要成为海贼王的男人’,‘passwd’=>‘admin888’’),
array(‘name’=>‘路飞Two’,‘desc’=>‘我才是要成为海贼王的男人’,‘passwd’=>‘admin888’’),
array(‘name’=>‘路飞Three’,‘desc’=>‘我才才是成为海贼王的男人’,‘passwd’=>‘admin888’’)
));
- 数据修改
$res = $this->mongo_db->where(array(‘name’=>‘路飞’))->set(array(‘name’=>‘张三’,‘username’=>‘路漫漫兮’,‘passwd’=>‘123456’,‘desc’=>‘你是魔鬼吗?’))->update(‘user’);
- 数据删除
$res = $this->mongo_db->where(array(‘name’=>‘路飞One’))->delect(‘user’);
这里简单介绍了一下详细的操作方法大家参阅:
application/libraries/Mongo_db.php