在WAMP上安装PHP的SQLSRV扩展

在WAMP上安装PHP的SQLSRV扩展,php,sql-server,wamp,Php,Sql Server,Wamp,我已经看过很多这样的帖子,并且都看过了,但是我仍然无法运行SQLSRV扩展。你能帮我吗?我将在下面发布我所有的信息: Windows 7 64位 WampServer 2.2 32位 PHP 5.4.3 32位 Apache 2.2.22(不知道是VC6还是VC9) Microsoft SQL Server 2012本机客户端64位 我下载了SQLSRV30.exe。我将dll文件解压缩到C:\wamp\bin\php\php5.4.3\ext 在我的php.ini中: extension

我已经看过很多这样的帖子,并且都看过了,但是我仍然无法运行SQLSRV扩展。你能帮我吗?我将在下面发布我所有的信息:

  • Windows 7 64位
  • WampServer 2.2 32位
  • PHP 5.4.3 32位
  • Apache 2.2.22(不知道是VC6还是VC9)
  • Microsoft SQL Server 2012本机客户端64位
我下载了SQLSRV30.exe。我将dll文件解压缩到C:\wamp\bin\php\php5.4.3\ext

在我的php.ini中:

  • extension_dir=“c:/wamp/bin/php/php5.4.3/ext/”
  • extension=php\u sqlsrv\u 54\u ts.dll
  • extension=php_pdo_sqlsrv_54_ts.dll
我知道SQLSRV30.exe是32位的。这就是为什么我有32位版本的Wamp和PHP。我还知道Wamp中没有任何内容是非线程安全的。
如果我查看phpinfo(),我应该会看到一个“sqlsrv”部分,但我目前没有看到。


我做错了什么?

今天早上我遇到了一些麻烦,但我发现我有一台x64 WampServer。。。这不可能正常工作

因此,我重新安装了一个x86 WampServer,并遵循了在PHP.net()上找到的所有内容。因为我在寻找x64解决方案时看到了这篇文章,所以我想我会回来帮助你:

1) 如果你有PHP5.4.#在Wamp上,我打赌是TS,VC9

2) 找到正确的“php.ini”:我的不在“bin/php#”文件夹中,而是在“bin/apache#”文件夹中(C:\wamp\bin\apache\apache2.2.22\bin\php.ini)

3) 有2个SQLSRV驱动程序版本,2.0和3.0,请确保您有3.0


从外观上看,我们有完全相同的Wamp版本,所以。。。我很确定你必须使用'php_sqlsrv_54_ts.dll'和'php_pdo_sqlsrv_54_ts.dll'。

如果你正在编辑
c:\wamp\bin\php\php.ini
,不要编辑该文件,只需编辑wamp server php.ini文件给出的文件,转到wamp server php,然后是php.ini,然后得到write ini文件

我也有同样的问题,这帮我解决了


另外,请确保右键单击WAMP快捷方式和“以管理员身份运行”

您在php扩展列表中看到新的dll了吗?如果是这样,请单击它并确保其名称旁边有一个V。 (左键单击dll的绿色wamp symbol.php-->php扩展-->名称)


我在PHP5.5、SQLSRV31.exe、php_sqlsrv_55_nts.dll和php_sqlsrv_55_ts.dll中遇到了类似的问题。奇迹般地成功了

参考:您的参考链接和我的情况之间的差异:我使用的是Apache而不是IIS。我相信我使用的是线程安全的PHP版本,而不是非线程安全的,但我如何确定呢?无论如何,在微软的sqlsrv php扩展下载页面中没有名为php_sqlsrv.dll的文件。sqlsrv文件有很多不同的版本,所有这些版本都适用于各种情况,如非线程安全与线程安全、PHP5.3.x与PHP5.4.x、VC6与VC9。我在这里找到了下载页面:您可以通过查看php文件夹来判断它是否是ts(线程安全)。TS安装使用php5ts.dll,而非TS使用php5.dll。我没有意识到我必须以管理员身份运行WAMP——这一定是一个重要步骤。另外,请验证扩展是否显示在phpinfo()中。使用WAMP,单击状态栏中的绿色W,单击localhost,然后单击phpinfo()