2

我正在尝试在 Windows 7 64 位 PC 上加载用于 php 的 MongoDb 扩展,使用 Apache 2.0 和 PHP 5.3.5 运行 XAMPP,编译器版本 VC6。我从本教程开始,还尝试了php 文档建议的扩展。MongoDb 本身运行良好,并且 shell 命令似乎可以工作。

目前我有:

  1. 添加extension=php_mongo.dll到我的php.ini文件中。
  2. 将 VC6 版本php_mongo.dll(来自以下下载页面,由 PHP 文档建议)放在 php/ext 文件夹中。
  3. 重新启动我的 Apache 服务器。

我也尝试过Stealth 的 githubphp_mongo.dll中的文件,但它们似乎也不起作用。

重新启动 Apache 时,我没有收到任何错误,但我在 MongoDb 中找不到任何内容phpinfo(),并且 Mongo 类也无法识别。

有什么想法可能是错的吗?如果您需要更多信息,请告诉我。

4

4 回答 4

2

问题可能是不正确的扩展版本。尝试从这里下载的不同版本:http: //pecl.php.net/package/mongo/1.6.4/windows

于 2015-03-06T10:52:09.107 回答
1

使用Bitnami WAMP Stack而不是 XAMPP 它预装了php_mongo.dll驱动程序,无需配置php.ini文件

没有针对 PHP7 发布的官方 MongoDB 驱动程序。所以最好下载Bitnami Wamp Stack提供的推荐的PHP版本5.5.30(当前)。

于 2015-10-15T11:19:31.460 回答
1

可能有两个原因:

第一个是@Sadd 建议的。您的 mongodb 扩展应该在您完成之后加载,因此很可能您在错误的文件中启用了扩展。是的,有两个类似的文件(命名php.ini-developmentphp.ini-production在 Windows 计算机上),所以请确保在php.ini文件中启用它并运行以下代码echo extension_loaded("mongodb") ? "loaded\n" : "not loaded\n";,您应该会loaded在屏幕上看到。

如果还是看不到,那么第二件事就是检查版本是否正确。您可以检查您phpinfo()的 php 版本,然后将正确的版本化 dll 文件放在 ext 文件夹中。在此,您必须检查您的 php 是 ts 还是 nts,第二个是检查您的 php 是 x64 还是 x86。我希望你能很好地进行其中一项或两项更改。

于 2019-06-13T19:11:22.130 回答
0

这让我发疯,直到我仔细查看了我的 PHP 版本:

$ php -v
PHP 7.4.1 (cli) (built: Dec 17 2019 19:23:59) ( NTS Visual C++ 2017 x64 )

注意它说的是PHP 7.4.1NTSx64吗?这意味着当我从 PECL 下载时,我需要版本7.4 Non Thread Safe (NTS) x64,否则它将无法正常运行。

于 2020-08-22T16:21:49.740 回答