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 相关文章推荐
javascript中的有名函数和无名函数
Oct 17 Javascript
js css样式操作代码(批量操作)
Oct 09 Javascript
js实现字符串转日期格式的方法
May 20 Javascript
jQuery实现的简洁下拉菜单导航效果代码
Aug 26 Javascript
基于jQuery实现仿百度首页选项卡切换效果
May 29 Javascript
angularjs 表单密码验证自定义指令实现代码
Oct 27 Javascript
JS定时器实现数值从0到10来回变化
Dec 09 Javascript
Node.JS文件系统解析实例详解
May 15 Javascript
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
Aug 09 Javascript
javaScript canvas实现(画笔大小 颜色 橡皮的实例)
Nov 28 Javascript
JavaScript学习笔记之图片库案例分析
Jan 08 Javascript
layer.prompt输入层的例子
Sep 24 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
无线电广播与收音机发展的历史回眸
2021/03/02 无线电
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
学习PHP Cookie处理函数
2016/08/09 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
Javascript 类与静态类的实现(续)
2010/04/02 Javascript
jquery 学习之一 对象访问
2010/11/23 Javascript
ajax java 实现自动完成功能
2012/12/19 Javascript
jquery 滚动条事件简单实例
2013/07/12 Javascript
jquery自动将form表单封装成json的具体实现
2014/03/17 Javascript
详谈nodejs异步编程
2014/12/04 NodeJs
TypeScript具有的几个不同特质
2015/04/07 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
详解如何使用webpack打包JS
2018/06/21 Javascript
一个Vue视频媒体多段裁剪组件的实现示例
2018/08/09 Javascript
NodeJS使用Range请求实现下载功能的方法示例
2018/10/12 NodeJs
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
在Vue里如何把网页的数据导出到Excel的方法
2020/09/30 Javascript
Python getopt模块处理命令行选项实例
2014/05/13 Python
python传递参数方式小结
2015/04/17 Python
介绍Python的@property装饰器的用法
2015/04/28 Python
Python扫描IP段查看指定端口是否开放的方法
2015/06/09 Python
通过python顺序修改文件名字的方法
2018/07/11 Python
python常用函数与用法示例
2019/07/02 Python
django框架auth模块用法实例详解
2019/12/10 Python
Python爬取数据并实现可视化代码解析
2020/08/12 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
HTML5+CSS设置浮动却没有动反而在中间且错行的问题
2020/05/26 HTML / CSS
DJI美国:消费类无人机领域的领导者
2018/04/27 全球购物
Nip + Fab官网:英国美容品牌
2019/08/26 全球购物
美国翻新电子产品商店:The Store
2019/10/08 全球购物
工厂保安员岗位职责
2014/01/31 职场文书
会计专业毕业生自荐书
2014/06/25 职场文书
大学生军训自我鉴定范文
2014/09/18 职场文书
身份证丢失证明
2015/06/19 职场文书
员工规章制度范本
2015/08/07 职场文书