安装PHP的SQL Server驱动程序

时间:2014-03-04 19:19:27

标签: php sql-server iis

我已安装:

  1. Windows Server 2008 R2 x64
  2. IIS 7
  3. PHP 5.5 (5.5.9) VC11 x64 Non Thread Safe (2014-Feb-06 00:36:15)
  4. MSVC11(Visual C ++ 2012)
  5. Sql Server 2008
  6. Sql Native Client
  7. 除了PHP的MSSQL驱动程序外,一切都很完美。我搜索了很多并下载了很多dll个文件。每次我收到此错误:

      

    PHP警告:PHP启动:无法加载动态库c:\ php \ ext \ php_sqlsrv_54_nts.dll - %1不是有效的Win32应用程序。    在第0行的未知中

    有谁能告诉我如何找到指定的驱动程序?提前谢谢。

3 个答案:

答案 0 :(得分:2)

文件名php_sqlsrv_54_nts.dll

中有一条线索

“54”指的是PHP 5.4。对于PHP 5.5,SQL驱动程序尚未(正式)存在。

:(

有些人从事非官方构建工作,但我只会将它们用于本地测试。 Microsoft sqlsrv extension for php 5.5.x

目前正式版仅适用于5.4.x

答案 1 :(得分:1)

以下是我博客中的一个页面,其中包含有关如何安装驱动程序的说明:http://robsphp.blogspot.com/2012/09/how-to-install-microsofts-sql-server.html

查找以橙色编写的文本,该文本指的是支持PHP 5.5 32和64位的驱动程序版本。

如果您只想要Microsoft的版本,请避免查看以橙色编写的任何内容。

答案 2 :(得分:0)

分享我的一些发现:

  1. 架构很重要(x86 / x64)
  2. PHP版本非常重要
  3. 匹配SQL驱动程序。应该安装。
  4. 请参阅This Link以查找您的PHP版本是否支持该驱动程序(请参见第一张表)。
  5. 引用Rob's答案以查找您的PHP This is His Blog
  6. 的体系结构和TS / NTS (线程安全/非线程安全)
  7. 这是为我解决的问题:我尝试使用Wampp-64位,选择了PHP 7.0.10,下载了MYSQL Driver版本5.3(注意:请参阅我提到的表格-第四点获取正确的版本)
  8. 仅保存了64位TS(php_sqlsrv_7_ts_x64.dll,php_pdo_sqlsrv_7_ts_x64.dll),因为我的php是线程安全的(您可以通过引用第5点找到它)到E:\ wamp64 \ bin \ php \ php7.0.10 \ ext文件夹。
  9. 从wampp菜单(E:\ wamp64 \ bin \ apache \ apache2.4.23 \ bin \ php.ini)中选择,将extension = php_sqlsrv_7_ts_x64.dll和extension = php_pdo_sqlsrv_7_ts_x64.dll添加到php.ini。
  10. 重新启动Wampp,效果很好。
  11. 对于那些面对调用未定义函数sqlsrv_connect()的人,也可以遵循此技术。