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中window.location.href,location.href,parent.location.href,top.location.href的用法与区别
Oct 18 Javascript
js操作iframe父子窗体示例
May 22 Javascript
jQuery子属性过滤选择器用法分析
Feb 10 Javascript
js实现div层缓慢收缩与展开的方法
May 11 Javascript
js实现可控制左右方向的无缝滚动效果
May 29 Javascript
JS无缝滚动效果实现方法分析
Dec 21 Javascript
jQuery之动画ajax事件(实例讲解)
Jul 18 jQuery
vue源码入口文件分析(推荐)
Jan 30 Javascript
JS判断两个数组或对象是否相同的方法示例
Feb 28 Javascript
详解vue更改头像功能实现
Apr 28 Javascript
详解可以用在VS Code中的正则表达式小技巧
May 14 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
Dec 22 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
smarty模板中使用get、post、request、cookies、session变量的方法
2014/04/24 PHP
PHP中phar包的使用教程
2017/06/14 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
PHP7.1实现的AES与RSA加密操作示例
2018/06/15 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
2019/10/22 PHP
JavaScript中使用replace结合正则实现replaceAll的效果
2010/06/04 Javascript
jquery获得下拉框值的代码
2011/08/13 Javascript
jquery键盘事件使用介绍
2011/11/01 Javascript
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
javascript 动态创建表格的2种方法总结
2015/03/04 Javascript
基于JavaScript实现移除(删除)数组中指定元素
2016/01/04 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
前端微信支付js代码
2016/07/25 Javascript
bootstrap table实例详解
2017/01/06 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
vue :src 文件路径错误问题的解决方法
2018/05/15 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
jQuery实现简单QQ聊天框
2020/08/27 jQuery
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
python实战教程之自动扫雷
2018/07/13 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
解决Django中调用keras的模型出现的问题
2019/08/07 Python
python禁用键鼠与提权代码实例
2019/08/16 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
Html5新标签datalist实现输入框与后台数据库数据的动态匹配
2017/05/18 HTML / CSS
德国大型箱包和皮具商店:Koffer
2019/10/01 全球购物
建筑项目策划书
2014/01/13 职场文书
个人党性剖析材料
2014/02/03 职场文书
初级会计求职信范文
2014/02/15 职场文书
农民工工资承诺书范文
2014/03/31 职场文书
竞聘上岗演讲稿
2014/05/16 职场文书
2016春季校长开学典礼致辞
2015/11/26 职场文书
2016年感恩节寄语
2015/12/07 职场文书