PHP 7.2.3 x86环境下MongoDB驱动安装失败如何解决?
解决XAMPP下PHP 7.2.3 x86 MongoDB驱动加载失败的问题
你这情况踩了几个驱动安装的常见坑,我给你一步步拆解解决:
1. 先搞定最明显的配置错误
你在php.ini里写的;extension=mongodb——开头的分号是注释符号啊!这行配置根本没生效!赶紧把分号去掉改成:
extension=mongodb
(PHP 7.2+也可以写成extension=mongodb.dll,效果完全一致)
2. 确认驱动与PHP的TS/NTS版本匹配
XAMPP默认的PHP基本都是**Thread Safe(线程安全,TS)**版本,但你下载的是Non Thread Safe(NTS)驱动,版本不匹配是加载失败的核心原因:
- 打开
phpinfo()页面,搜索「Thread Safety」字段:- 如果显示
Enabled,说明你的PHP是TS版本,得重新下载对应PHP 7.2 x86的TS版MongoDB驱动 - 如果显示
Disabled,那NTS驱动是对的,这一步跳过
- 如果显示
- 下载时注意文件名标识:比如
php_mongodb-1.4.2-7.2-ts-vc15-x86.zip,其中ts代表线程安全,vc15是PHP 7.2对应的编译器版本,必须完全对应
3. 确保文件放置与配置路径正确
- 把压缩包里的
mongodb.dll放到XAMPP的php/ext目录下,别乱改文件名 - 确认你修改的是Apache正在用的
php.ini:在phpinfo()里找「Loaded Configuration File」字段看路径,比如可能是C:\xampp\apache\bin\php.ini,别改错成PHP目录下的备用配置文件
4. 一定要重启Apache服务
改完php.ini后必须重启XAMPP的Apache,配置才会生效,这步很多人容易忘!
5. 验证驱动是否加载成功
重启后刷新phpinfo()页面,搜索「mongodb」,如果能看到MongoDB模块的详细信息,说明驱动已经装好了。
6. 重新执行Composer命令
驱动正常加载后,再运行:
composer require jenssegers/mongodb
就不会再出现「Unable to load dynamic library 'mongodb'」的错误了。另外提一句,jenssegers/mongodb的3.x版本完全兼容PHP 7.2,不用担心版本适配问题。
内容的提问来源于stack exchange,提问作者Hoxlegion
相关产品推荐
相关产品推荐

