mongodb php函数的问题

时间:2015-07-13 12:18:38

标签: php mongodb

我在使用php进行mongoDB的实施时遇到了一些问题

我的情况是我创建了一个函数,用于恢复mongoDB变量中的$_SESSION['mongoDb']数据库,选择一个集合,然后使用函数find($where, $fields)

我的错误是

Fatal error: Call to a member function find() on a non-object in...

我已经尝试过检查mongodb php驱动程序和其他人,但问题仍然存在......

编辑:有关的更多信息。

感谢帖子Eternal1,它有点令人困惑,因为相同的代码在生产服务器中工作,但不在我的localhost XAMPP服务器上。

对于那个问我代码的人,你在这里:

public function generic_select_mongo ($collection, $fields, $where, $order, $limit)
    {
    $mongoBd = $_SESSION['mongoBd'];
    $col = $mongoBd->$collection;

    $res = $col->find($where, $fields);
    $res->sort($order);
    $result = array();

    while ($docs = $res->getNext())
        {
        $result[] = $docs;
        }

    return $result;
    }

我要调查php中的Session。很抱歉有其他信息的答案。

1 个答案:

答案 0 :(得分:0)

与其他数据库连接一样,

MongoDB连接属于resource类型,无法序列化,因此无法正确存储到会话中。 PHP会话手册说明:

  

某些类型的数据无法序列化,因此存储在会话中。它   包括资源变量或带有循环引用的对象(即   将引用传递给另一个对象的对象)

PHP Sessions