PHP 8.2.1与SQL Server2019环境下SQLSRV未在PHP INFO显示求助
问题排查与解决步骤
核心不匹配问题
你的配置与PHP环境存在多处关键不兼容,这是SQLSRV未加载的主要原因:
- PHP版本与SQLSRV版本不匹配:你使用的是PHP 8.2.1,但配置的是
php_sqlsrv_81_*.dll(81对应PHP 8.1版本),版本完全不对应。 - 线程安全(TS/NTS)不匹配:你的PHP是
NTS(非线程安全)版本,但配置的是ts(线程安全)后缀的dll,两者无法兼容。 - 架构冗余配置:你的PHP是x64架构,无需加载32位的
php_sqlsrv_81_ts.dll,仅需保留对应x64的扩展文件。
具体修复步骤
替换为适配的SQLSRV扩展文件
下载对应PHP 8.2、NTS、x64架构的SQLSRV扩展,文件名应为php_sqlsrv_82_nts_x64.dll,并将文件放入PHP的ext目录中。修正php.ini配置
删除原有错误配置,替换为以下内容(建议使用extension_dir绝对路径,避免路径解析问题,示例路径需根据实际PHP安装目录调整):extension_dir = "C:\PHP\ext" [PHP_SQLSRV] extension = php_sqlsrv_82_nts_x64.dll确认VC++运行时环境
你的PHP基于Visual C++ 2019编译,需确保服务器已安装Visual C++ Redistributable for Visual Studio 2019 x64版本,缺少该运行时会导致扩展加载失败。重启服务并验证
重启IIS及PHP相关服务(如使用PHP-FPM),之后访问phpinfo页面,检查是否出现SQLSRV模块信息。查看错误日志定位问题
若仍未加载,查看PHP错误日志(可在php.ini中设置error_log指定日志路径),日志会明确提示扩展加载失败的具体原因,比如文件缺失、版本不兼容等。
内容的提问来源于stack exchange,提问作者George A. Custer
相关产品推荐
相关产品推荐

