【发布时间】:2017-08-01 00:17:25
【问题描述】:
我已经在带有PHP 5.6.31 VC11 x64 Non Thread Safe 的新 Windows 10 机器上安装了新的 IIS 10 服务器(目前还不能使用 PHP7)。 PHP 现在运行良好,phpinfo() 正在正确显示所有内容。
我刚刚安装了 PHP SQL 驱动程序,但它没有被加载。它没有出现在 phpinfo() 中,当我尝试在代码中使用它时,出现以下 PHP 错误:
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in test.php:3
Stack trace:
#0 test.php(3): PDO->__construct('sqlsrv:server=...', '', '')
要安装 PHP SQL 驱动程序,我做了以下操作:
- 下载并安装了Microsoft ODBC Driver 11 for SQL Server (x64)
- 下载并安装Microsoft Driver for PHP for SQL Server (SQLSRV32.EXE)
- 在 PHP 管理器中启用了扩展(
php_sqlsrv_56_nts.dll和php_sqlsrv_56_nts.dll) - 重新启动 IIS 服务器
[PHP_XDEBUG-2.5.5-5.6-VC11-NTS-X86_64]
extension=php_xdebug-2.5.5-5.6-vc11-nts-x86_64.dll
[PHP_PDO_ODBC]
extension=php_pdo_odbc.dll
[PHP_PDO_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
[PHP_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
这一切对我来说都是正确的,而且我之前已经在其他机器上成功地做到了这一点。我觉得我错过了一些简单的东西。
其他几点说明:
- PHP 错误日志为空。
- 我已尝试加载我下载的所有其他 dll 文件(例如针对 5.5、5.4 等的文件),但没有任何改变。
值得注意的是,我很好地安装了 Xdebug,它正在显示在 phpinfo()。
【问题讨论】: