【发布时间】:2014-01-08 17:41:50
【问题描述】:
我正在使用 WampServer 2.4 安装配置:
- Windows 7 64-bit sp1
- WampServer 2.4 64-bit
- PHP 5.4.3 64-bit (came with the WampServer)
- Apache 2.4.4
- Microsoft SQL Server 2012 Native Client 64-bit
- Microsoft SQLSRV 3.0 (php_sqlsrv_54_ts.dll, php_pdo_sqlsrv_54_ts.dll and they are put in c:/wamp/bin/php/php5.4.3/ext/
我编辑了 C:\wamp\bin\apache\Apache2.4.4\bin\php.ini 的行:
- extension_dir = "c:/wamp/bin/php/php5.4.3/ext/"
- extension=php_sqlsrv_54_ts.dll
- extension=php_pdo_sqlsrv_54_ts.dll
我从 Wamp 重新启动了所有服务。
但是我仍然看不到 phpinfo 中的 SQLSRV 部分——当然我的连接测试程序失败了。
可能出了什么问题?
谁能帮忙?
【问题讨论】:
-
首先确保 php 向您显示任何错误,因此请将以下内容包含在您可以作为测试执行的 php 文件中。 ini_set('display_errors','1'); ini_set('display_startup_errors','1'); error_reporting (E_ALL);
-
此外,由于无法加载扩展程序,在运行 cli php.exe 时通常很容易看到,因为它默认将错误显示为弹出窗口(只需双击 php.exe)。 sqlsrv 驱动程序的一个常见问题是没有安装 sql native 客户端。
-
我确实收到了以下错误:C:\wamp\bin\php\php5.4.12>php -a PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/ php/php5. 4.12/ext/php_sqlsrv_54_ts.dll' - %1 不是有效的 Win32 应用程序。在第 0 行的未知中
-
我还确保安装了 Microsoft SQL Server Native Client(如版本 9.00.3042.00 的程序和功能中所示)。
-
最后一点信息:来自 phpinfo,它显示 ThreadSafe 已开启。这就是我选择 ts.dll 的原因。
标签: php sql-server apache wamp