zoukankan      html  css  js  c++  java
  • PHP连接mongodb的现代用法---使用MonogodbDriverManager

    目的:在php程序端查询文档相关集合存储情况

    <?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/11/29 * Time: 2:23 */ //require("mongoconn.php");
    $i=0;
    $conn = new MongoDBDriverManager("mongodb://localhost:27017");
    $query = ["_id"=>['$gte'
    =>0]];#注意用于表示大于等于的表达式之前一定要加"$"否则结果会出错,而且必须用单引号包裹$,因为依照php双引号的特性,
    #"$gte"会去检索一个变量名为gte的变量的值,而这里$gte仅仅是作为mongodb检索的一个条件表达式
    $cmd = new MongoDBDriverCommand([
      'distinct'=>'color',
      'key'=>'color',
      'query'=>$query
    ]);
    $row = $conn->executeCommand("olddream",$cmd);
    $ret = $row->toArray();
    var_dump($ret);#可以观察一下,这一步返回的结果是一个数组类型,其中第一个值是一个object类型,其属性values存储着查询结果
    #所以为拿到查询结果,做如下操作
    $retarray = $ret[0]->values;
    $i = count($retarray
    );
    foreach($retarray as $k=>$v){
      echo $k."==========".$v."
    ";
    }
    echo "下一个要插入的值是:".$i;
    #var_dump($ret);输出结果
    array(1) {
      [0]=>
      object(stdClass)#6 (2) {
        ["values"]=>
        array(13) {
          [0]=>
          string(3) ""
          [1]=>
          string(3) ""
          [2]=>
          string(3) ""
          [3]=>
          string(3) "绿"
          [4]=>
          string(3) ""
          [5]=>
          string(3) ""
          [6]=>
          string(3) ""
          [7]=>
          string(3) ""
          [8]=>
          string(3) ""
          [9]=>
          string(3) ""
          [10]=>
          string(3) ""
          [11]=>
          string(3) ""
          [12]=>
          string(6) "深蓝"
        }
        ["ok"]=>
        float(1)
      }
    }
    整个程序执行结果
    0==========1==========2==========3==========绿
    4==========5==========6==========7==========8==========9==========10==========11==========12==========深蓝
    下一个要插入的文档的_id值是:13
    mongodb数据库相关数据库文档集合存储情况

  • 相关阅读:
    对json的爱恨情仇
    Linux操作系统改动PATH的方法
    不好意思啊,我上周到今天不到10天时间,用纯C语言写了一个小站!想拍砖的就赶紧拿出来拍啊
    cmd启动Oracle服务和监听服务
    8.4.1 跨越整个分区的聚合函数
    nginx 代理tcp长连接短连接配置
    Nginx Upstream Keepalive 分析 保持长连接
    Xargs用法详解
    删除除了指定扩展名文件其他全部删除
    LINUX的文件按时间排序
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/10070376.html
Copyright © 2011-2022 走看看