mongodb介绍与封装php7操作类库
相对好用些, 包含了php5的代码, 体积有点大且用起来也不是很顺手, 于是就自己搞了一个。参考了ThinkPHP的数据库操作用法,用起来更加直观方便。
·
mongodb特点
mongodb是一个非关系型的文档数据库, 有这么几个特点:
- 数据的存储格式为BSON,一种类似json的二级制格式, 这意味着MongoDB更加灵活,因为可以在文档中直接插入数组之类的复杂数据类型,并且文档的key和value不是固定的数据类型和大小,所以开发者在使用MongoDB时无须预定义关系型数据库中的”表”等数据库对象,设计数据库将变得非常方便,可以大大地提升开发进度。
- 性能高。MongoDB使用的是内存映射存储引擎,在内存充足的情况下它会把数据文件映射到内存中,内存不足的情况下会把索引和热数据,如果是读操作,内存中的数据起到缓存的作用,如果是写操作,内存还可以把随机的写操作转换成顺序的写操作,总之可以大幅度提升性能。
- 弱事务,不使用自增ID。这使得它不适用于某些场景,但能进一步提高性能。
centos7安装monogdb
vim /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]
name=MongoDB 3.4 Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1
yum install -y mongodb-org
安装php mongodb扩展
pecl install mongodb
echo "extension=mongodb.so" >> /etc/php.ini
使用PHP操作mongodb
原生mongodb类用起来非常的繁琐 参考网友吐槽:PHP7 MongoDB扩展 - 个人页面 - OSCHINA - 中文开源技术交流社区
mongodb提供的官方类: GitHub - mongodb/mongo-php-library: The Official MongoDB PHP library 相对好用些, 包含了php5的代码, 体积有点大且用起来也不是很顺手, 于是就自己搞了一个
自己封装的mongodb操作类
GitHub - ninvfeng/mongodb: 一个简单的php7 mongodb数据库操作类
参考了ThinkPHP的数据库操作用法,用起来更加直观方便
增
mongodb('user')->insert(['user'=>'ninvfeng','pass'=>'password']);
mongodb('user')->insert(['user'=>'lvlv','pass'=>'password']);
删
mongodb('user')->where(['user'=>'ninvfeng'])->delete();
改
mongodb('user')->where(['user'=>'lvlv'])->update(['pass'=>'password2']);
查找一条
mongodb('user')->where(['user'=>'lvlv'])->find();
查找&&分页
mongodb('user')->page(1)->select();
查找并删除 原子操作
mongodb('user')->where(['user'=>'lvlv'])->findAndRemove();
统计
mongodb('user')->count();
调用函数
mongodb('user')->func();
返回原生对象
mongodb('user')->mongodb();
更多推荐


所有评论(0)