我使用 PHP 5.4 进行了简单的 IIS 7 设置。在我需要添加 MS SQL Server 支持之前,一切都运行良好。我下载了通过this link提供的SQLSRV包,将相应的DLL解压缩到我的PHP ext
目录,并在php.ini
中添加了扩展条目/配置,如下所示:
; MS SQL Server
extension=php_sqlsrv.dll
;extension=php_pdo_sqlsrv.dll
[sqlsrv]
sqlsrv.LogSubsystems=-1
sqlsrv.LogSeverity=-1
sqlsrv.WarningsReturnAsErrors=0
...对extension_dir
设置进行了额外更改:
extension_dir = "ext"
...,然后重新启动我的服务器。现在,当我运行任何请求时,我得到:
PHP_RINIT for php_sqlsrv: entering
sqlsrv.WarningsReturnAsErrors = Off
sqlsrv.LogSeverity = -1
sqlsrv.LogSubsystems = -1
sqlsrv.ClientBufferMaxKBSize = 10240
PHP_RSHUTDOWN for php_sqlsrv: entering
有时,第一行缺失,但通常是同一个问题。没有页面生成正确的文本/ HTML了!发生了什么事?感谢。
答案 0 :(得分:0)
在概率平衡上,我想你正在使用错误的sqlsrv dll。首先要做的事情是:您是否从here下载了SQLSRV?
我假设你想要PDO版本(我使用它;它运行得很好!)。从文件名,我不知道你有什么,但根据你的情况,你应该使用php_pdo_sqlsrv_54_nts.dll
。当你使用IIS时,你将拥有一个NTS版本的PHP,它应该与非线程安全扩展一起使用。
尝试替换您正在使用的dll,然后在IIS中重新加载应用程序池。 phpinfo()应将sqlsrv显示为可用的PDO驱动程序。让我知道你是怎么过的...... :)