MongoDb php扩展未加载
我正在尝试在Windows7 64位PC上加载MongoDb扩展以支持php,该PC使用Apache2.0和PHP5.3.5运行XAMPP,编译器版本为VC6。我从一开始就尝试了,并且也尝试了。MongoDb本身运行良好,shell命令似乎可以正常工作 目前我有:MongoDb php扩展未加载,php,mongodb,xampp,Php,Mongodb,Xampp,我正在尝试在Windows7 64位PC上加载MongoDb扩展以支持php,该PC使用Apache2.0和PHP5.3.5运行XAMPP,编译器版本为VC6。我从一开始就尝试了,并且也尝试了。MongoDb本身运行良好,shell命令似乎可以正常工作 目前我有: 在我的php.ini文件中添加了extension=php\u mongo.dll 将VC6版本的php_mongo.dll(根据以下php文档的建议)放在php/ext文件夹中 重新启动我的Apache服务器 我还尝试了php\u
php.ini
文件中添加了extension=php\u mongo.dll
php_mongo.dll
(根据以下php文档的建议)放在php/ext文件夹中php\u mongo.dll
文件表单,但它们似乎也不起作用
重新启动Apache时,我没有收到任何错误,但在MongoDb上的phpinfo()
中找不到任何内容,并且Mongo类也无法识别
有什么想法可能是错误的吗?如果您需要更多信息,请告诉我。问题可能是扩展版本不正确。尝试从此处下载的不同版本:问题可能是扩展版本不正确。尝试从这里下载的不同版本:使用而不是XAMPP它预装了
php\u mongo.dll
驱动程序,无需配置php.ini
文件
没有为PHP7发布官方MongoDB驱动程序。因此,最好下载Bitnami Wamp Stack提供的推荐PHP版本5.5.30(当前版本)。使用预先加载的PHP_mongo.dll
驱动程序,而无需配置PHP.ini
文件,而不是XAMPP
没有为PHP7发布官方MongoDB驱动程序。因此,最好下载Bitnami Wamp Stack提供的推荐PHP版本5.5.30(当前版本)。可能有两个原因: 第一个是@Sadd建议的。您的mongodb扩展应该在您完成之后加载,所以很可能是您在错误的文件中启用了扩展。是的,有两个类似的文件(在windows计算机上命名为
php.ini development
和php.ini production
),因此请确保在php.ini
文件中启用它,并运行以下加载的代码echo扩展(“mongodb”)?“已加载”:“未加载\n”代码>并且您应该在屏幕上看到加载的
如果您仍然看不到它,那么您可以做的第二件事是检查版本是否正确。您可以检查php版本的phpinfo()
,然后将正确版本的dll文件放在ext文件夹中。在这种情况下,您可以检查您的php是ts还是nts,第二个是您的php是x64还是x86。我希望您能很好地进行其中一项或两项更改。可能有两个原因:
第一个是@Sadd建议的。您的mongodb扩展应该在您完成之后加载,所以很可能是您在错误的文件中启用了扩展。是的,有两个类似的文件(在windows计算机上命名为php.ini development
和php.ini production
),因此请确保在php.ini
文件中启用它,并运行以下加载的代码echo扩展(“mongodb”)?“已加载”:“未加载\n”代码>并且您应该在屏幕上看到加载的
如果您仍然看不到它,那么您可以做的第二件事是检查版本是否正确。您可以检查php版本的phpinfo()
,然后将正确版本的dll文件放在ext文件夹中。在这种情况下,您可以检查您的php是ts还是nts,第二个是您的php是x64还是x86。我希望您能很好地跟踪其中一个或两个更改。这让我发疯,直到我仔细查看我的PHP版本:
$ php -v
PHP 7.4.1 (cli) (built: Dec 17 2019 19:23:59) ( NTS Visual C++ 2017 x64 )
注意,它说的是PHP7.4.1和NTS和x64?这意味着当我从PECL下载时,我需要版本7.4非线程安全(NTS)x64,否则它将无法正常运行。这让我发疯,直到我仔细查看我的PHP版本:
$ php -v
PHP 7.4.1 (cli) (built: Dec 17 2019 19:23:59) ( NTS Visual C++ 2017 x64 )
注意,它说的是PHP7.4.1和NTS和x64?这意味着,当我从PECL下载时,我需要版本7.4非线程安全(NTS)x64,否则它将无法正常运行。能否告诉我们php在phpinfo()输出中注册了什么扩展文件夹?扩展文件夹是C:\xampp\php\extini您修改了哪个文件?phpinfo()告诉您它正在使用哪个INI文件?当PHP无法加载您在使用过的PHP.ini文件中指定的扩展名时,它将发出错误消息,因此您要么正在抑制这些错误,要么正在修改错误的PHP.ini。我发现我在错误的ini文件中启用了扩展名,检查正在使用哪个php.ini文件的phpinfo。您能告诉我们php在phpinfo()输出中注册了哪个扩展文件夹吗?扩展文件夹是C:\xampp\php\extini文件,您修改了哪个文件?phpinfo()告诉您它正在使用哪个INI文件?当PHP无法加载您在使用过的PHP.ini文件中指定的扩展名时,它将发出错误消息,因此您要么正在抑制这些错误,要么正在修改错误的PHP.ini。我发现我在错误的ini文件中启用了扩展名,请检查正在使用PHP.ini文件的phpinfo。