我试图通过遵循this tutorial
使Laravel MongoDB在我的本地计算机(Windows 10家庭版,x64)中工作D:\xampp
上成功安装了XAMPP 7.3.11,并测试了是否可以访问服务器(在浏览器中输入localhost:80
)我继续在php_mongodb.dll
上提取从pecl(适用于Windows的mongodb 1.6.0,适用于7.3非线程安全,x64)上的D:\xampp\php\ext
,并添加行{{ 1}}在文件extension=php_mongodb.dll
在D:\xampp\php\php.ini
中选择“您要使用的命令行PHP”之后,安装程序将提供以下输出:
您指定的PHP exe文件未正确运行: D:\ xampp \ php \ php.exe
您的命令行PHP使用的php.ini是:D:\ xampp \ php \ php.ini
您的php.ini中的设置可能会导致此问题: 'extension_dir'值不正确或dll不存在。
程序输出:PHP警告:PHP启动:无法动态加载 库'php_mongodb.dll'(尝试:D:\ xampp \ php \ ext \ php_mongodb.dll (指定的模块无法找到。), D:\ xampp \ php \ ext \ php_php_mongodb.dll.dll(指定的模块可以 找不到)。)在第0行上的“未知”中
注释行D:\xampp\php\php.exe
将执行extension=php_mongodb.dll
,而不会发出任何警告。但是我需要php在作曲家安装过程中注意D:\xampp\php\php.exe
,对吗?
那么如何解决此问题?该文件肯定存在于该文件夹中,并且已对php_mongodb.dll
进行了所需的修改。
我已经四处看看,有些人提到php.ini
中的路径必须写成完整路径。但是我已经检查过extension_dir
上的行是php.ini
答案 0 :(得分:1)
问题已解决。
原因:我使用的是非线程安全php_mongodb.dll
,而XAMPP安装的PHP是一个线程安全的。
将php_mongodb.dll
替换为线程安全版本后,没有错误,我可以成功完成composer的安装。
答案 1 :(得分:0)
有很多解决此错误的方法:
1)请将extension=php_mongodb.dll
更改为extension=php_mongo.dll
。
2)如果仍然生成错误,则另一个解决方法是下载正确的Dll
文件。这背后的原因是我们使用支持64位的DLL文件64位系统。但是wamp / xampp体系结构可以是32位。我们需要使用基于wamp / xampp架构而不是Windows架构。因此,请尝试查找与wamp / xampp体系结构相关的DLL文件版本。
请尝试使用这两种解决方案。