我正在尝试使用 OOP PHP 访问我的 mongodb 集合。然而在页面上它什么也没返回,但是当我查看我的 apache 错误日志时,它指出
PHP 注意:试图在第 22 行的 main.php 中获取非对象的属性
这是我正在使用的代码:db.php
class db {
static $db = NULL;
static function getMongoCon()
{
if (self::$db === null)
{
try {
$m = new Mongo('mongodb://{user}:{password}@{host}:{port}/{database}');
} catch (MongoConnectionException $e) {
die('Failed to connect to MongoDB '.$e->getMessage());
}
self::$db = $m;
}
else
{
return self::$db;
}
}
}
主文件
//load db files
require_once('db.php');
class test{
public function __construct() {
echo $this->output();
}
public function output() {
$con=db::getMongoCon();
$db=$con->database;
$test=$db->collection;
$n=$test->find();
print_r($n);
}
}
new test();
这一切都使用过程代码工作,我也能够在这种方法中插入数据 - 所以它应该工作(出于明显的安全原因,我在这里删除了数据库详细信息)。
注意:我已阅读此内容,但仍然无法正常工作。