Laravel安装jenssegers/mongodb提示ext-mongodb缺失报错咨询
解决方案
按以下步骤排查即可解决:
- 第一步:确认命令行PHP是否正确加载mongodb扩展
composer运行在PHP CLI(命令行)环境下,和web服务用的php.ini大概率不是同一个文件。在终端执行以下命令验证扩展状态:php --ri mongodb
如果返回扩展不存在的提示,找到CLI对应的php.ini文件(可通过php --ini命令查看加载的ini路径),确认extension=php_mongodb.dll配置已添加且未被注释。 - 第二步:核对扩展与本地PHP版本兼容性
你安装的php_mongodb-1.10.0-8.0-ts-vs16-x64扩展仅适配以下环境:- PHP 8.0.x 版本
- 64位系统
- 线程安全(TS)版本的PHP
- VS16编译的PHP版本
执行php -v命令核对本地PHP信息,任意一项不匹配都会导致扩展加载失败,需要重新下载对应版本的mongodb扩展。
- 第三步:排查旧扩展冲突
你同时启用了已经废弃的php_mongo.dll(适配PHP5的老版本扩展)和新版php_mongodb.dll,两者可能出现加载冲突。打开php.ini将extension=php_mongo.dll这行注释后,重启终端再重试安装。 - 临时跳过检查方案
如果确认扩展已经正常加载,composer仍然识别失败,可以在安装命令后加参数跳过平台检查:composer require jenssegers/mongodb ^3.8 --ignore-platform-req=ext-mongodb
内容的提问来源于stack exchange,提问作者story ks
相关产品推荐
相关产品推荐

