在Mongo PHP库中获取对象

时间:2014-01-05 09:46:22

标签: php mongodb

我使用this MongoDB库进行PHP

如果我使用此代码:

$db->users->find();

我得到了一个关联数组。

是否可以通过find()方法获取对象?

例如,在PDO我可以这样做:

$stmt->fetch(PDO::FETCH_OBJ);

谢谢。

2 个答案:

答案 0 :(得分:1)

如果你要找的是stdclass对象(比如PDO::FETCH_OBJ),你可以转换当前元素:

$obj = (object) $db->users->find()->getNext();

在PHP手册中了解有关强制转换的更多信息:

答案 1 :(得分:0)

电话

$db->users->find();

返回一个 \ MongoCursor 对象,这是一个迭代器,你可以像在数组中一样在foreach循环中循环。但是,从中获得的每个结果都是一个关联数组。

http://php.net/mongocollection.find

因此,要获取对象,您可以在使用之前将每个项目转换为对象:

$list = $db->users->find();
foreach($list as $user) {
    $user = (object)$user; // object cast here

    echo $user->name; // use it as an object
}