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 相关文章推荐
最佳JS代码编写的14条技巧
Jan 09 Javascript
jquery对单选框,多选框,文本框等常见操作小结
Jan 08 Javascript
jQuery ajax serialize() 方法使用示例
Nov 02 Javascript
Javascript编程中几种继承方式比较分析
Nov 28 Javascript
Javascript 普通函数和构造函数的区别
Nov 05 Javascript
jquery实现图片列表鼠标移入微动
Dec 01 Javascript
JavaScript定时器setTimeout()和setInterval()详解
Aug 18 Javascript
详解bootstrap用dropdown-menu实现上下文菜单
Sep 22 Javascript
函数式编程入门实践(一)
Apr 20 Javascript
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
Jul 10 jQuery
vue源码nextTick使用及原理解析
Aug 13 Javascript
Layui 解决表格异步调用后台分页的问题
Oct 26 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
Yii2中添加全局函数的方法分析
2017/05/04 PHP
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
2007/05/07 Javascript
符合W3C网页标准的iframe标签的使用方法
2007/07/19 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
jQuery实现预加载图片的方法
2015/03/17 Javascript
JavaScript实现点击自动选择TextArea文本的方法
2015/07/02 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
2015/08/07 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
2017/04/21 jQuery
Angular 项目实现国际化的方法
2018/01/08 Javascript
jQuery第一次运行页面默认触发点击事件的实例
2018/01/10 jQuery
原生JS实现DOM加载完成马上执行JS代码的方法
2018/09/07 Javascript
JS二级菜单不同实现方法分析【4种方法】
2018/12/21 Javascript
jQuery实现form表单基于ajax无刷新提交方法实例代码
2019/11/04 jQuery
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
vue 判断页面是首次进入还是再次刷新的实例
2020/11/05 Javascript
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
Python 通配符删除文件的实例
2018/04/24 Python
flask session组件的使用示例
2018/12/25 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
深入了解python中元类的相关知识
2019/08/29 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
HTML5时代CSS设置漂亮字体取代图片
2014/09/04 HTML / CSS
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
什么是组件架构
2016/05/15 面试题
高中生学习的自我评价
2013/12/14 职场文书
小学生优秀评语大全
2014/04/22 职场文书
文明村镇申报材料
2014/05/06 职场文书
公司董事长岗位职责
2014/06/08 职场文书
市场营销工作计划书
2014/09/15 职场文书
上课睡觉万能检讨书
2015/02/17 职场文书
2016年学校综治宣传月活动总结
2016/03/16 职场文书
Windows 11要来了?微软文档揭示Win11太阳谷 / Win10有两个不同版本
2021/11/21 数码科技
SpringBoot+Redis实现布隆过滤器的示例代码
2022/03/17 Java/Android
使用CSS实现六边形的图片效果
2022/08/05 HTML / CSS