Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SqlSrv驱动程序不是';使用iis10&;PHP5.6_Iis_Php 5.6_Sqlsrv - Fatal编程技术网

SqlSrv驱动程序不是';使用iis10&;PHP5.6

SqlSrv驱动程序不是';使用iis10&;PHP5.6,iis,php-5.6,sqlsrv,Iis,Php 5.6,Sqlsrv,我已经在一台新的Windows 10机器上安装了一台新的IIS 10服务器,它的VC11 x64是非线程安全的(目前还不能使用PHP7)。PHP现在运行良好,phpinfo()正在正确显示所有内容 我刚刚安装了PHPSQL驱动程序,但是没有加载。它没有显示在phpinfo()中,当我尝试在代码中使用它时,会出现以下PHP错误: PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driv

我已经在一台新的Windows 10机器上安装了一台新的IIS 10服务器,它的VC11 x64是非线程安全的(目前还不能使用PHP7)。PHP现在运行良好,
phpinfo()
正在正确显示所有内容

我刚刚安装了PHPSQL驱动程序,但是没有加载。它没有显示在
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驱动程序,我执行了以下操作:

  • 下载并安装了(x64)
  • 下载并安装了(SQLSRV32.EXE)
  • 在PHP管理器中启用扩展(
    PHP_sqlsrv_56_nts.dll
    PHP_sqlsrv_56_nts.dll
  • 重新启动IIS服务器

在我看来这一切都是正确的,我以前在其他机器上也成功地做到了这一点。我觉得我错过了一些简单的事情

其他一些注意事项:

  • PHP错误日志为空
  • 我已经尝试加载我下载的所有其他dll文件(例如针对5.5、5.4等的文件),但它没有改变任何东西

值得注意的是,我很好地安装了Xdebug,它显示在
phpinfo()

中,我通过使用PHP for x86而不是x64解决了这个问题。我猜SQL驱动程序不是为x64设计的(尽管我在任何地方都看不到)

我一换衣服,一切都好起来了


请注意,您需要x86才能工作。如果您已经安装了x64可再发行版本,则需要安装为x86设计的版本。

我已通过使用PHP for x86而不是x64解决了此问题。我猜SQL驱动程序不是为x64设计的(尽管我在任何地方都看不到)

我一换衣服,一切都好起来了


请注意,您需要x86才能工作。如果您已经安装了x64可再发行版本,则需要安装为x86设计的版本。

或使用此库:php_pdo_sqlsrv_73_nts.dll

或使用此库:php_pdo_sqlsrv_73_nts.dll

已知PHP7的SQL Server驱动程序支持x64.php 5.6与x64存在多个问题。如果您确实需要64位支持,您应该考虑PHP 7支持7.x.SQL Server驱动程序,支持X64.PHP 5.6已知与X64有多个问题。如果你需要64位的支持,你应该考虑7.x。为什么安装7.3版本会在5.6中修复一个问题?为什么安装版本7.3会在5.6中修复一个问题?
[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