PHP连接mongodb的现代用法---使用Monogodb\Driver\Manager
目的:在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(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数据库相关数据库文档集合存储情况