PHP 没有与 mongoDB 连接

Posted

技术标签:

【中文标题】PHP 没有与 mongoDB 连接【英文标题】:PHP is not connecting with mongoDB 【发布时间】:2020-01-10 08:25:36 【问题描述】:

目前我正在一个需要 php 和 mongoDB 的 Web 项目中工作。当我运行它给出错误的代码时

这些是我使用过的技术

wampserver 3.1.7

阿帕奇 2.4.37

php 7.2.14

mongoDB 4.20

mongo-php 驱动 7.2 线程安全(Ts) x64

&我使用的是 Windows 8.1(64 位)操作系统

我所做的是:

在 C:\Program Files 上安装了 mongodb

在 C:\

上安装了 wampserver

将 C:\Program Files\MongoDB\Server\4.2\bin 更改为环境路径

将php_mongodb.dll放到C:\wamp64\bin\php\php7.2.14\ext文件夹中

在 php.ini 中添加“extension=php_mongodb”这一行

重启wamp服务器

//this is my code
<?php
$m=new MongoClient();
?>

我的 mongodb 和 wampserver 工作正常..我可以在 wampserver 主页的“加载的扩展”中找到 mongodb..

当我运行它说的代码时:

( ! )致命错误:未捕获的错误:在第 2 行的 C:\wamp64\www\all_files\mongo.php 中找不到类 'MongoClient' (!) 错误:在第 2 行的 C:\wamp64\www\all_files\mongo.php 中找不到类 'MongoClient'

请帮助我出了什么问题..告诉我如何将 php 与 mongoDB 连接

谢谢!!!

【问题讨论】:

【参考方案1】:

您的 mongoDB 安装错误,或者您运行的 mongoDB 版本不兼容。

如果 SQL 是一个替代方案,那么这始终是一个不错的选择。

在最坏的情况下,您仍然可以使用 PHP 处理加密文件。

仔细检查系统路径

我过去也有过类似的经历,要么是安装不良 或损坏的注册表项。

如果您的处理器允许虚拟机或双启动,我强烈建议至少在类似 unix 的平台上尝试此操作。

除此之外,我唯一能想到的就是重新安装 xampp。

========= 需要考虑的事情

您是否以管理员身份运行应用程序?

你可以使用 sql 作为替代吗?

您的防火墙是否与服务器连接冲突?

您是否有任何与服务器连接冲突的防火墙规则?

是否正确安装了 mongoDB?

【讨论】:

不,我使用了最新版本的 mongodb,即 mongodb 4.20 (mongodb -atlas),我已从 mongodb 官方网站下载[mongodb.com/download-center],但我仍然无法连接这些,我不知道正确的理由 这个项目你依赖 mogoDB 吗? SQL是一种选择吗?如果您的项目无法在 Windows 上运行,您可以切换到 linux 平台或虚拟机吗? 尝试卸载 wamp,然后单独安装。这在 ubuntu 上通过 apt-get 很容易实现。然后,您需要做的就是下载并安装以下内容:mongoDB、php 和 apache web 最后一点,这可能会解决您的问题:***.com/questions/30801167/…

以上是关于PHP 没有与 mongoDB 连接的主要内容,如果未能解决你的问题,请参考以下文章

将 PouchDB 与 MongoDB 一起使用

如何通过 CodeIgniter 连接 MongoDB

NodeJS与mongoDB的连接错误

MongoDB 连接

MongoDB PHP

如何将 maxPoolSize 与 mongodb-php 驱动程序版本 1.2.0 一起使用