php对mongodb的扩展(初出茅庐)


Posted in PHP onNovember 11, 2012

我们的php mongodb也能做mysql、sqlserver能做的几乎所有功能,本文将详细介绍

一、操作符
操作符相信大家肯定都知道了,就是等于、大于、小于、不等于、大于等于、小于等于,但是在mongodb里不能直接使用这些操作符。在mongodb里的操作符是这样表示的:
(1) $gt > (大于)

 
(2) $lt

< (小于)

 
(3) $gte

>= (大于等于)
(4) $lt

<= (小于等于)


(5) $ne

!= (不等于) 
(6) $in

in (包含)


(7) $nin

not in (不包含)


(8) $exists

exist (字段是否存在) 
(9) $inc

对一个数字字段field增加value
(10) $set

就是相当于sql的set field = value
(11) $unset

就是删除字段


(12) $push

把value追加到field里面去,field一定要是数组类型才行,如果field不存在,会新增一个数组类型加进去
(13) $pushAll

同$push,只是一次可以追加多个值到一个数组字段内
(14) $addToSet

增加一个值到数组内,而且只有当这个值不在数组内才增加。
(15) $pop

删除最后一个值:{ $pop : { field : 1 } }删除第一个值:{ $pop : { field : -1 } }注意,只能删除一个值,也就是说只能用1或-1,而不能用2或-2来删除两条。mongodb 1.1及以后的版本才可以用
(16) $pull

从数组field内删除一个等于value值
(17) $pullAll

同$pull,可以一次删除数组内的多个值
(18) $ 操作符

是他自己的意思,代表按条件找出的数组里面某项他自己。这个比较坳口,就不说了。

二、CURD 增、改、读、删
增加

db.collection->insert({'name' => 'caleng', 'email' => 'admin#admin.com'});

是不是灰常简单呀,对就是这么简单,它没有字段的限制,你可以随意起名,并插入数据

修改

db.collection.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } ); 只更新了第一条大于1记录 
db.collection.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true ); 大于3的记录 全更新了 
db.collection.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false ); 大于4的记录 只加进去了第一条 
db.collection.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true ); 大于5的记录 全加进去

查询
db.collection.find(array('name' => 'bailing'), array('email'=>'email@qq.com')) 
db.collection.findOne(array('name' => 'bailing'), array('email''email@qq.com'))

大家可以看到查询我用了两种不同的写法,这是为什么,其实这跟做菜是一样的,放不同的调料,炒出的菜是不同的味道。下面给大家说一下,这两种调料的不同作用。
findOne()只返回一个文档对象,find()返回一个集合列表。
也就是说比如,我们只想查某一条特定数据的详细信息的话,我们就可以用findOne();
如果想查询某一组信息,比如说一个新闻列表的时候,我们就可以作用find();
那么我想大家这时一定会想到我想对这一个列表排序呢,no problem mongodb会为您全心全意服务
db.collection.find().sort({age:1}); //按照age正序排列 
db.collection.find().sort({age:-1}); //按照age倒序排列 
db.collection.count(); //得到数据总数 
db.collection.limit(1); //取数据的开始位置 
db.collection.skip(10); //取数据的结束位置 
//这样我们就实现了一个取10条数据,并排序的操作。

删除
删除有两个操作 remove()和drop()
db.collection.remove({"name",'jerry'}) //删除特定数据 
db.collection.drop() //删除集合内的所有数据

distinct操作
db.user.distinct('name', {'age': {$lt : 20}})

噢!一口气写太多了,大家看太多也不易消化。今天就到这里吧,明天接着写php对mongodb的操作,尽请期待哦!不能再写了,不然的话明天会变熊猫。good night. have a good dream.
PHP 相关文章推荐
PHP 数组实例说明
Aug 18 PHP
PHP开启gzip页面压缩实例代码
Mar 11 PHP
使用迭代器 遍历文件信息的详解
Jun 08 PHP
PHP删除数组中特定元素的两种方法
Jul 02 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
Sep 30 PHP
php网页标题中文乱码的有效解决方法
Mar 05 PHP
php实现遍历目录并删除指定文件中指定内容
Jan 21 PHP
php数组随机排序实现方法
Jun 13 PHP
PHP抽奖算法程序代码分享
Oct 08 PHP
PHP使用Pear发送邮件(Windows环境)
Jan 05 PHP
PHP实现适用于自定义的验证码类
Jun 15 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
Oct 16 PHP
PHP面向对象——访问修饰符介绍
Nov 08 #PHP
PHP ? EasyUI DataGrid 资料存的方式介绍
Nov 07 #PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
Nov 07 #PHP
PHP正确解析UTF-8字符串技巧应用
Nov 07 #PHP
nginx+php-fpm配置文件的组织结构介绍
Nov 07 #PHP
使用 PHPMAILER 发送邮件实例应用
Nov 07 #PHP
PHP数据集构建JSON格式及新数组的方法
Nov 07 #PHP
You might like
使用php方法curl抓取AJAX异步内容思路分析及代码分享
2014/08/25 PHP
PHP实现图片裁剪、添加水印效果代码
2014/10/01 PHP
PHPstorm快捷键(分享)
2017/07/17 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
css把超出的部分显示为省略号的方法兼容火狐
2008/07/23 Javascript
JavaScript DOM 编程艺术(第2版)读书笔记(JavaScript的最佳实践)
2013/10/01 Javascript
Array 重排序方法和操作方法的简单实例
2014/01/24 Javascript
ListBox实现上移,下移,左移,右移的简单实例
2014/02/13 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
jQuery插件扩展实例【添加回调函数】
2016/11/26 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
用js将long型数据转换成date型或datetime型的实例
2017/07/03 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
js定时器出现第一次延迟的原因及解决方法
2021/01/04 Javascript
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
Python线程之定位与销毁的实现
2019/02/17 Python
python中时间模块的基本使用教程
2019/05/14 Python
python分别打包出32位和64位应用程序
2020/02/18 Python
Python使用configparser库读取配置文件
2020/02/22 Python
Django数据库操作之save与update的使用
2020/04/01 Python
next在python中返回迭代器的实例方法
2020/12/15 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
会走动的图形html5时钟示例
2014/04/27 HTML / CSS
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
娱乐地球:Entertainment Earth
2020/01/08 全球购物
牵手50台湾:专为黄金岁月的单身人士而设的交友网站
2021/02/18 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
项目计划书范文
2014/01/09 职场文书
小学端午节活动方案
2014/03/13 职场文书
股票投资建议书
2014/05/19 职场文书
爬山的活动方案
2014/08/16 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
我去timi了,一起去timi是什么意思?
2022/04/13 杂记