注意:未定义 属性: MongoDB\Driver\Manager::$mydb in [Path] in wamp server

Notice: Undefined property: MongoDB\Driver\Manager::$mydb in [Path] in wamp server

我想从 php 运行 mongo 我正在使用 MongoDB 64 bitWampServer 64 bitApache Version: 2.4.18PHP Version: 5.6.19 .我还在 PHPphp.iniapachephp.ini 中添加了 mongodb.dll 扩展名。我还安装了 Composer 和 运行 命令

composer require "mongodb/mongodb=^1.0.0"

在 运行 宁下面的代码我得到这个错误:

连接到 mongo 成功并且也选择了数据库那么为什么会出现这个错误?

   require 'vendor/autoload.php';
   // connect to mongo
   $m = new MongoDB\Driver\Manager();
   echo "Connection to database successfully";

   // select a db
   $db = $m->mydb;
   echo "Database mydb selected";

?>

我也试过 $db = $m->test; 但得到了同样的错误。在此先感谢您的帮助。

尝试

new MongoClient()

如果您仍然遇到错误,那么它似乎无法加载 Mongo 模块。

首先你必须下载稳定的dll zip文件。 PHP-MONGO

下载模块的线程版本。复制 dll 文件并将其粘贴到 C:\wamp64\bin\php\php5.6.19\ext(如果是 wamp)。然后转到 php.ini 文件并粘贴以下脚本:extension=php_mongo.dll 在扩展行中。

注意:扩展名前不应有';'。 然后重新启动 WAMP。在 wamp-php-扩展菜单中,您可以找到 php_mongo勾选标记。重新启动 Wamp。

启动 mongo 并尝试执行以下脚本。

<?php
    if($connection = new mongoClient()){
        echo "Connected Successfully";
     } 
?>`

注意:首先启动Mongo服务器。

更多信息:PHP/Mongo Manual

如果您在启动时遇到问题 Mongo 然后在您的 Mongo/bin 目录 :

中写入如下命令
mongod --storageEngine=mmapv1 --dbpath [your-path]

your-path=您要保存数据库文件的路径。 (例如:F:\data\db)

Mongo 服务器现在是 运行。 不要关闭命令

添加

问题已解决
$m = new MongoDB\Client("mongodb://localhost:27017");

而不是

$m = new MongoDB\Driver\Manager();

其实我打错了class。 :)