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

<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2018/11/29
* Time: 2:23
*/
//require("mongoconn.php");
$i=0;
$conn = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$query = ["_id"=>['$gte'=>0]];#注意用于表示大于等于的表达式之前一定要加"$"否则结果会出错,而且必须用单引号包裹$,因为依照php双引号的特性,
#"$gte"会去检索一个变量名为gte的变量的值,而这里$gte仅仅是作为mongodb检索的一个条件表达式
$cmd = new MongoDB\Driver\Command([
  '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."\n";
}
echo "下一个要插入的值是:".$i;
#var_dump($ret);输出结果
array() {
[]=>
object(stdClass)# () {
["values"]=>
array() {
[]=>
string() "红"
[]=>
string() "橙"
[]=>
string() "黄"
[]=>
string() "绿"
[]=>
string() "青"
[]=>
string() "蓝"
[]=>
string() "紫"
[]=>
string() "灰"
[]=>
string() "粉"
[]=>
string() "黑"
[]=>
string() "白"
[]=>
string() "棕"
[]=>
string() "深蓝"
}
["ok"]=>
float()
}
}
整个程序执行结果
==========红
==========橙
==========黄
==========绿
==========青
==========蓝
==========紫
==========灰
==========粉
==========黑
==========白
==========棕
==========深蓝
下一个要插入的文档的_id值是:
mongodb数据库相关数据库文档集合存储情况

PHP连接mongodb的现代用法---使用Monogodb\Driver\Manager的更多相关文章

  1. 爬虫入门【8】Python连接MongoDB的用法简介

    MongoDB的连接和数据存取 MongoDB是一种跨平台,面向文档的NoSQL数据库,提供高性能,高可用性并且易于扩展. 包含数据库,集合,文档等几个重要概念. 我们在这里不介绍MongoDB的特点 ...

  2. Java 连接MongoDB

    1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...

  3. MongoDB聚合查询及Python连接MongoDB操作

    今日内容概要 聚合查询 Python操作MongoDB 第三方可视化视图工具 今日内容详细 聚合查询 Python操作MongoDB 数据准备 from pymongo import MongoCli ...

  4. nodejs连接mongodb的方法

    一. var express = require('express'); var mongodb = require('mongodb'); var app = express(); app.use( ...

  5. Nodejs开发(2.连接MongoDB)

    一.先配置MongoDB Win10下下载那个安装版,zip版的会报却各种DLL,安装在你希望的路径,实在安装错了,就剪切过来也行(本例E:\mongodb). 然后是配置启动脚本,就是写一个bat文 ...

  6. 在express中使用Mongoose连接MongoDB

    为何要学Mongoose? Mongoose是MongoDB的一个对象模型工具,封装了MongoDB对文档的的一些增删改查等常用方法,让NodeJS操作Mongodb数据库变得更加灵活简单. 0.安装 ...

  7. java连接mongodb的一个奇葩问题及奇葩解决方式

    昨天在eclipse中编写代码,本来连接mongodb进行各项操作都是正常的,但是有一会儿突然之间就没法连接了,还一直抱错,错误如下: 信息: Cluster created with setting ...

  8. 远程连接mongodb出现 no route to host 和 Connection refused

    部署好mongodb服务器后,在客户端安装好php的mongodb扩展,用程序连接mongodb服务器出错:no route to host.搜索了差不多一天的时候都没有相关的解决方法.最后在mong ...

  9. NOSQL Mongo入门学习笔记 - C++连接Mongodb(三)

    OS环境: Centos 7.1 release X86_64 编译环境: G++ 4.8.3 已经成功搭建好了Mongodb,也初步在命令行中的查询与写入数据的基本方法,现在通过C++来连接Mong ...

随机推荐

  1. flutter详解路由栈(二)

    前面,我们已经知道如何简单在路由栈中 push.pop 实例,然而,当遇到一些特殊的情况,这显然不能满足需求.学习 Android 的同学知道 Activity 的各种启动模式可以完成相应需求,Flu ...

  2. 关于使用unittest单元测试框架的一些问题集

    1.使用unittest.TestSuites生成的测试套件,使用HtmlTestRunner运行时报Type Error. 1)是由于使用unittest.TestSuites生成的测试套件里的Te ...

  3. QA Issue: PN: startUp is upper case, this can result in unexpected behavior. [uppercase-pn]

    (借用一下) 该错误直接导致生成开机启动程序无法启动,既无法生成S99***快捷链接. 解决方法:仅仅将recpie lib-Test改成lib-test就可以了,即不要有大写字母. 附启动方法: S ...

  4. 磊哥的密码箱icpc11526

    问题 D: 磊哥的密码箱 时间限制: 1 Sec  内存限制: 128 MB提交: 238  解决: 61[提交] [状态] [命题人:admin] 题目描述 磊哥有个密码箱,里面装的都是令磊哥羞羞的 ...

  5. switch-case的选择用法

    企业发放的奖金根据利润提成.利润I低于或等于100000元的,奖金可提0.1:利润高于100000元,低于200000(100000<I<=200000)时,低于100000元的部分按10 ...

  6. c语言l博客作业11

    问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在 ...

  7. Elasticsearch-搜索并获取数据

    Elasticsearch-搜索并获取数据 在group中搜索elasticsearch curl -XGET "localhost:9200/get-together/group/_sea ...

  8. etcd租约机制

    新建租约 新建一个过期时间为120s的租约 # etcdctl lease grant lease 018f6d7bb11aba0d granted with TTL(120s) 查看新建的租约信息 ...

  9. SSM笔记

    Spring Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象.也可以称之为项目中的粘合剂. Spring的核心思想是IoC(控制 ...

  10. CF 1140B Good String

    Description You have a string ss of length nn consisting of only characters > and <. You may d ...