php - SQLSRV PHP for SQL Server 不是有效的 Win32 应用程序

标签 php sql-server apache sqlsrv

这是我的设置

  • Windows Server 2008 R2 64 位
  • Apache 2.4.4 64 位
  • PHP 5.4.15 32 位(64 位仍在试验中),线程安全,VC9 编译器
  • Microsoft SQL Server 2012 native 客户端 64 位
  • Microsoft Visual C++ 2010 x86 和 x64

我需要加载 Microsoft 的 SQLSRV 库。

我已将“extension=php_sqlsrv_54_ts.dll”添加到 php.ini 并将“php_sqlsrv_54_ts.dll”复制到安装 PHP 的 ext 文件夹中。

当我重新启动 apache 时,我的 php 错误日志中出现以下错误,并且 SQLSRV 未在 phpinfo 中列出。

PHP Warning:  PHP Startup: Unable to load dynamic library 'C:\php5\ext\php_sqlsrv_54_ts.dll' - %1 is not a valid Win32 application.

我哪里错了?

编辑 出于测试目的,我刚刚安装了 PHP 5.5.10 64 位和 VC 2012,但错误仍然存​​在 :(

最佳答案

我不知道它是否有帮助,但我在我的 Windows 7 64 位系统上使用了所有 32 位

这是我使用的,我可以使用 SQL Server

httpd-2.4.6-win32-VC9 //apache 2.4
php-5.4.9-Win32-VC9-x86 //php5

在我的 \php\ 文件夹中

  • php5apache2_4.dll

\php\ext\里面我有

  • php_pdo_sqlsrv_54_nts.dll
  • php_pdo_sqlsrv_54_ts.dll

我在 php.ini 的末尾添加了这个

[PHP_SQLSRV]
extension=php_sqlsrv_54_ts.dll
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_54_ts.dll

我记得让它工作是一件很痛苦的事,但现在确实如此。如果我还记得我会编辑我的答案

更新:

我觉得这篇博文看起来很熟悉我是如何让它工作的

http://robsphp.blogspot.co.uk/2012/09/how-to-install-microsofts-sql-server.html

关于php - SQLSRV PHP for SQL Server 不是有效的 Win32 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22530231/

相关文章:

php - Laravel [5.2.21] 自定义 Auth Guard 不持久

apache - 使用 sed 取消注释 httpd.conf 中的一行

apache - 从 Apache 转发到 Tomcat 会中断 Grails rest api 调用

php - Joomla 3.4.3 - configuration.php 不可写

php - 我试图用 php 变量动态命名我的表单按钮

javascript - 如何在网页中指定文件路径,以便同一文件在服务器和本地主机上工作?

PHP MySQL : mysqli_free_result

sql-server - 索引 View : How to choose the Clustered Index?

sql - 如何将值 'NULL'输入到SQL Server中的nvarchar列中?

sql - 使用 CTE 从下线记录中获取总计数和总金额之和