dougai2427 2016-12-28 16:49
浏览 69
已采纳

如何在php中检索MongoDB多个数组值?

I want to retrieve all the values of the field color. How do php handle this values?

{
    _id : 1,

    color : ["red","blue","yellow"]
},
{
    _id : 2,

    color : ["green","black","grey"]
}

PHP code :

<?php

    $connect = new MongoClient();

    $collection = $database->database_name->collection;

    $cursor = $collection->find( array(), array( 'color' ) );

    foreach( $cursor as $val )

     echo json_encode( $val );

?>

As a result it does not return any values. How do I get the array values?

  • 写回答

1条回答 默认 最新

  • dougua9328 2016-12-28 18:45
    关注

    Use distinct to get distinct values of your array :

    $cursor = $collection->distinct('color');
    

    A full example :

    <?php
    
        $m = new MongoClient();
        $db = $m->selectDB("testDB");
        $cursor = $db->users->distinct('color');
        var_dump($cursor);
    
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作