zoukankan      html  css  js  c++  java
  • Mongodb之(小试牛刀) jerry

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

    地址发来:http://cn2.php.net/manual/zh/class.mongocollection.php

    好了,Mongodb就写到这里了。 我想大家在后面的使用中越来越轻车熟路的。
    借用 张雨生的《我期待》跟大家 " say goodbye      say goodbye ye a  昂首阔步不留一丝遗憾!"

  • 相关阅读:
    C语言程序设计习题参考答案
    C语言程序设计 数据类型转换
    C语言程序设计 练习题参考答案 第二章
    计算机等级考试二级C语言考试复习五要点
    计算机等级考试二级快速复习法
    C语言程序设计 辗转相除法
    ReportViewer (RDLC) 中的换行符是什么
    关于axis2中对soapfault的处理的一个小bug
    java多线程中利用优先级来分配CPU时间的实例
    马云演讲
  • 原文地址:https://www.cnblogs.com/mbailing/p/phpmongode.html
Copyright © 2011-2022 走看看