You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下PHP7.4无法加载sqlsrv扩展求助及报错排查

解决PHP 7.4无法加载sqlsrv扩展的问题

我之前升级PHP版本时也碰到过一模一样的报错,折腾了好一阵才搞定,给你列几个最可能的原因和排查步骤:

  • 检查扩展文件名与php.ini配置是否匹配
    从报错信息看,PHP尝试加载的是php_sqlsrv_74_nts_x64(不带.dll)和自动补全前缀后的php_php_sqlsrv_74_nts_x64.dll,这明显有问题。你需要:

    1. 打开C:\Program Files (x86)\PHP\v7.4\ext\目录,确认实际的扩展文件名(应该是php_sqlsrv_74_nts_x64.dll和php_pdo_sqlsrv_74_nts_x64.dll)
    2. 打开php.ini,找到扩展配置行,改成extension=php_sqlsrv_74_nts_x64(注意不要多写php_前缀,也不需要加.dll,PHP会自动补全);或者更简单的方式:如果你的扩展文件名是标准的php_sqlsrv.dll(部分版本下载后可重命名),直接写extension=sqlsrv即可。
  • 确认扩展版本完全匹配PHP环境
    微软的sqlsrv扩展对版本要求非常严格,必须满足:

    • 对应PHP 7.4版本
    • 与PHP的线程安全(TS/NTS)一致:你用的是NTS(非线程安全)版本,所以必须下载NTS版本的扩展
    • 与PHP的位数(x64/x86)一致:你的PHP是x64的,扩展也必须是x64版本
      下载时一定要选对应组合的压缩包,别下错了。
  • 检查VC++运行库是否安装
    PHP 7.4是基于VC15编译的,必须安装Microsoft Visual C++ 2017 Redistributable(x64版本)。如果没装或者版本不对,扩展会因为依赖缺失无法加载。

  • 验证ODBC Driver 17的位数
    你的PHP是x64的,ODBC Driver 17也必须安装x64版本,不能装x86的。可以打开ODBC数据源管理器(64位),检查是否能看到「ODBC Driver 17 for SQL Server」。

  • 确认扩展文件确实在ext目录中
    有时候下载后解压漏了文件,或者放错了目录,一定要手动去C:\Program Files (x86)\PHP\v7.4\ext\里确认php_sqlsrv_74_nts_x64.dll存在,而且系统有读取这个文件的权限。

最后,修改完配置后重启你的Web服务器(比如IIS、Apache),然后打开命令行运行php -m,看看输出里有没有sqlsrv和pdo_sqlsrv;或者创建一个phpinfo.php文件,访问它查看扩展是否加载成功。

内容的提问来源于stack exchange,提问作者David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 20:42:34