php对mongodb的扩展(小试牛刀)


Posted in Javascript onNovember 11, 2012

今天外面刮着呼呼的大风,能在一个温暖的小屋写着博客也是北漂的一种幸福。好了废话不多说,今天主要说一下php连接、操作mongodb,如果你没有看上两期的内容,不知道如何安装php对mongodb的扩展的话请您返回去看《php对mongodb的扩展(初识如故) 》和《php对mongodb的扩展(初出茅庐)》 。

php 连接mongodb

try { 
$mongo = new Mongo("mongodb://username:password@127.0.0.1:27017/db1"); 
}catch(MongoConnectionException $e) { 
print $e->getMessage(); 
exit; 
}

选择数据库blog
$db = $mongo->blog;

关闭数据库
$conn->close();

选择操作集合
$collection = $db->users;
插入数据
$user = array('name' => 'caleng', 'city' => 'beijing'); 
$collection->insert($user);

修改数据
$newdata = array('$set' => array("city" => "shanghai")); 
$collection->update(array("name" => "caleng"), $newdata);

删除数据
$collection->remove(array('name'=>'caleng'), array("justOne" => true));

查找数据
查找一条数据
$result= $collection->findone(array("name"=>"caleng"));

查询一个列表
//找出创建时间大于某一时间的数据 
$start = 1; 
$counditionarray=array("ctime"=>array('$gt'=>1337184000)); 
$list_data = $this->game_handle->find($counditionarray); 
$total = $this->game_handle->count($counditionarray); 
$list_data->limit($count); //数据结束位置 
$list_data->skip($start); //数据开始取的位置 
var_dump($list_data);

in查询
$cursor = $collection->find(array( 
'name' => array('$in' => array('Joe', 'Wendy')) 
));

group查询
$collection->insert(array("category" => "fruit", "name" => "apple")); 
$collection->insert(array("category" => "fruit", "name" => "peach")); 
$collection->insert(array("category" => "fruit", "name" => "banana")); 
$collection->insert(array("category" => "veggie", "name" => "corn")); 
$collection->insert(array("category" => "veggie", "name" => "broccoli")); 
$keys = array("category" => 1); 
$initial = array("items" => array()); 
$reduce = "function (obj, prev) { prev.items.push(obj.name); }"; 
$g = $collection->group($keys, $initial, $reduce); 
echo json_encode($g['retval']);

输出结果:
[{"category":"fruit","items":["apple","peach","banana"]},{"category":"veggie","items":["corn","broccoli"]}]

可以看出得到的结果是一个二维 数组
array( 
0 => array("category" =>"fruit", "items"=>array("apple","peach","banana")), 
1 => array("category" =>"veggie", "items"=>array("corn","broccoli")) 
)

在这里这写了一些简单的操作,如果您想用php更好的作用mongodb 那就看手册吧。
Javascript 相关文章推荐
妙用Jquery的val()方法
Jun 27 Javascript
javascript 10进制和62进制的相互转换
Jul 31 Javascript
JS折半插入排序算法实例
Dec 02 Javascript
JavaScript观察者模式(经典)
Dec 09 Javascript
微信小程序 require机制详解及实例代码
Dec 14 Javascript
深入理解Node中的buffer模块
Jun 03 Javascript
微信小程序 如何引入外部字体库iconfont的图标
Jan 31 Javascript
在Vue methods中调用filters里的过滤器实例
Aug 30 Javascript
15分钟深入了解JS继承分类、原理与用法
Jan 19 Javascript
微信小程序转发事件实现解析
Oct 22 Javascript
js判断浏览器的环境(pc端,移动端,还是微信浏览器)
Dec 24 Javascript
基于vue-cli3+typescript的tsx开发模板搭建过程分享
Feb 28 Javascript
php对mongodb的扩展(初识如故)
Nov 11 #Javascript
JavaScript判断DOM何时加载完毕的技巧
Nov 11 #Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
Nov 11 #Javascript
jQuery语法总结和注意事项小结
Nov 11 #Javascript
javascript继承之为什么要继承
Nov 10 #Javascript
jquery表单验证使用插件formValidator
Nov 10 #Javascript
js 判断checkbox是否选中的操作方法
Nov 09 #Javascript
You might like
地球防卫队:陪着奥特曼打小怪兽的人类力量 那些经典队服
2020/03/08 日漫
PHP+MYSQL的文章管理系统(一)
2006/10/09 PHP
社区(php&&mysql)四
2006/10/09 PHP
php获取访问者IP地址汇总
2015/04/24 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
JS OOP包机制,类创建的方法定义
2009/11/02 Javascript
20个非常棒的Jquery实用工具 国外文章
2010/01/01 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
IE浏览器下PNG相关功能
2015/07/05 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
浅谈bootstrap源码分析之scrollspy(滚动侦听)
2016/06/06 Javascript
JavaScript Date 知识浅析
2017/01/29 Javascript
js实现tab切换效果
2017/02/16 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
node.js中grunt和gulp的区别详解
2017/07/17 Javascript
JavaScript数组排序reverse()和sort()方法详解
2017/12/24 Javascript
vue 实现数字滚动增加效果的实例代码
2018/07/06 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
浅析Vue中拆分视图层代码的5点建议
2019/08/15 Javascript
vue实现codemirror代码编辑器中的SQL代码格式化功能
2019/08/27 Javascript
vue实现员工信息录入功能
2020/06/11 Javascript
举例讲解Python中is和id的用法
2015/04/03 Python
python3 与python2 异常处理的区别与联系
2016/06/19 Python
使用Python读取大文件的方法
2018/02/11 Python
Python面向对象实现一个对象调用另一个对象操作示例
2019/04/08 Python
Python的Lambda函数用法详解
2019/09/03 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
CSS3中Animation动画属性用法详解
2016/07/04 HTML / CSS
Clarks英国官方网站:全球领军鞋履品牌
2016/11/26 全球购物
Gloeilampgoedkoop荷兰:在线购买灯泡
2019/02/16 全球购物
上海期货面试题
2014/01/31 面试题
const和static readonly区别
2013/05/20 面试题
小学数学教师研修日志
2015/11/13 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
Python实现猜拳与猜数字游戏的方法详解
2022/04/06 Python