繁体   English   中英

如何从PHP中的mongodb集合中获取所有记录

[英]How to fetch all the records from mongodb collection in php

我尝试了以下代码从mongodb集合中选择所有记录,但是只有最后插入的记录会出现。

<?php 
$m=new MongoClient();
$db=$m->trip;
if($_SERVER['REQUEST_METHOD']=="POST")
{
    $userId=$_POST['userId'];
    $param=explode(",",$userId);
    $collection=$db->chat;
    $record=$collection->find(array("userId"=>$userId));
    if($record)
    {
        foreach($record as $rec)
        {
            $json=array("msg"=>$rec);
        }
    }
    else
    {
        $json=array("msg"=>"No Records");
    }
}
else
{
    $json=array("msg"=>"Request Method is Not Accespted");
}
//output header
header('Content-type:application/json');
echo json_encode($json);

?>

但是只有一张唱片会来,请帮助我

您的问题是每次您的foreach执行时,它都会覆盖$json变量的内容。 尝试先声明$json ,然后再使用它。

if($record)
{
    $json = array();
    foreach($record as $rec)
    {
        $json[] = array("msg"=>$rec);
        //   /\ this means adding the attribution to the end of the array.
    }
}

这样,每次执行foreach ,不会替换$json的内容,而是将其附加。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM