是否有适用于PHP的MSSQL Server驱动程序(64位)?
我安装了Apache 2.4(64位)环境。还有PHP 5.5.12(64位)
我在网上搜索了MSSQL Server驱动程序""对于PHP 64位但我什么也没找到。我能找到的只是一个32位。此外,我发现的所有文章都是旧的,没有最新的。
我尝试安装32位驱动程序,但在执行C:\php>php -m
时收到警告
这是警告
PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_sqlsrv_54_ts.dll' - %1 is not a valid Win32 application. in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_pdo_sqlsrv_54_ts.dll' - %1 is not a valid Win32 application. in Unknown on line 0
我从Microsoft Drivers 3.0 for PHP for SQL Server下载了MSSQL服务器驱动程序 如果有一个MSSQL Server驱动程序可用于PHP 64位环境? 如果没有,那么除了必须回到32位PHP环境之外还有解决方法吗?
答案 0 :(得分:1)
我也遇到过这个问题。我发现你需要确保你的php.ini文件的extension = php_sqlsrv_54_ts.dll区域只在php.ini的Apache位置取消注释。
例如:
如果你有 C:\ Webserver \ bin \ apache \ bin \ php.ini ,你可能有一个 C:\ Webserver \ bin \ php \ php.ini 以及。确保您的扩展引用仅在... \ apache \ bin \ php.ini中。
我花了 3小时才意识到有2个不同的php.ini文件并且错误正在抛出,因为我在错误的php.ini文件中初始化了扩展,但它仍然在那里看由于某些原因。我希望这会有所帮助。
答案 1 :(得分:0)
您是否尝试过更新到php 7?
用于Windows的PHP 5的x64版本是实验性的,不提供64位整数或大文件支持。因此我怀疑MS会发布一个php5版本的驱动程序,特别是因为php 7的版本已经发布了几个月了。
此MSSQL驱动程序于2016年7月发布
下载" SQLSRV40.EXE"来自https://www.microsoft.com/en-us/download/details.aspx?id=20098
可执行文件是一个自解压程序,可以在任何地方解压缩。 您甚至以相同的价格获得PDO。 以下是包中的文件
使用php 7.0,7.1,7.2进行测试