这是php代码。
EXTRA_TEXT
在此,当使用 var_dump($ k)时,在$ j变量中检索数据,输出如下:
<?php
// connect to mongodb
$m = new MongoClient();
// select a database
$db = $m->Example;
$collection="User";
$Query = array("Username"=>$username);
$j = $db->$collection->find($Query);
foreach ($j as $k) {
echo"<pre>";var_dump($k); echo"</pre>";
}
foreach($j as $k => $v) {
echo $k.'='.$j[$k].'<br>';
}
?>
但是,如果您尝试在下一个foreach循环中显示单个键值对,则会出现以下错误:
array(8) {
["_id"]=>
object(MongoId)#6 (1) {
["$id"]=>
string(24) "56d1cb49097ed3241d000029"
}
["Fname"]=>
string(4) "Ritu"
["Lname"]=>
string(3) "Rad"
["Username"]=>
string(4) "riri"
["Password"]=>
string(4) "riri"
["Email"]=>
string(23) "ritikatra@gmail.com"
}
如何仅显示特定键及其值? 例如:电子邮件ritikatra@gmail.com
答案 0 :(得分:0)
\MongoCollection::find()
(您的$j
)变量的结果是实现\MongoCursor
的{{1}}类的实例 - 它允许您循环它但它不会有钥匙(即没有实施\Iterator
)。如果您想将结果用作数组,请致电
\ArrayAccess
现在您可以使用$array = iterator_to_array($j);
,因为它是普通数组:
$array