PHP连接操作sqlserver

摘要:(windows)主要说一下连接中遇到的问题

1、报错ODBC这时候需要在window里面安装对应的msi、

    https://www.microsoft.com/en-us/download/confirmation.aspx?id=36434

2、php要支持sqlserver要安装对应版本的php的扩展并打开(在网盘中)

下面是可以使用的方案:

1、7.0.x

7.0.x的扩展下载地址:

Microsoft Drivers for PHP for SQL Server  https://www.microsoft.com/en-us/download/details.aspx?id=20098

ODBC Driver:

Microsoft® ODBC Driver 11 for SQL Server® - Windows (支持Sql Server® 2005)  https://www.microsoft.com/zh-CN/download/details.aspx?id=36434

Microsoft® ODBC Driver 13 for SQL Server® - Windows + Linux (支持最新的SQL Server® 2016)  https://www.microsoft.com/zh-CN/download/details.aspx?id=50420

安装配置:

下载SQL Server的PHP扩展(Microsoft Drivers for PHP for SQL Server),连接里有多个文件,只需要下载 SQLSRV40.EXE 即可。

解压后根据自己PHP的版本选择32位或64位的扩展,注意区分(Thread safe?)nts和ts。

复制扩展需要的文件到PHP扩展目录。(例如我这里使用的是:php_pdo_sqlsrv_7_ts_x64.dll 和  php_sqlsrv_7_ts_x64.dll)

修改php.ini添加以下两行来启用扩展:

extension=php_sqlsrv_7_ts_x64.dll
extension=php_pdo_sqlsrv_7_ts_x64.dll

安装ODBC Driver,根据自己的需要选择上面的地址下载并安装。

现在可以使用phpinfo()来查看是否成功加载了 pdo_sqlsrv 模块。

 

2、PHP 7.1.x

PHP 7.1.x 按照上面的方法配置是不行的,因为4.0版本的Microsoft Drivers for PHP for SQL Server仅支持到PHP7.0。

PHP 7.1.x 使用的扩展要到GitHub去下载4.1.3版本的才能用。

4.1.3 - Windows - Preview https://github.com/Microsoft/msphpsql/releases/tag/v4.1.3-Windows

配置方法同7.0.x,目前仍是预览版。

总结:

1、下载msi

2、安装dll并修改php.ini



评论
  • 2019-04-15 13:04:17 by Eric Guo
    php7.0n也可以正常访问,其他版本没做测试
  • 2018-11-27 11:23:34 by Eric Guo
    这里是使用了round 和sum 发现了这个问题,解决是通过了left,后续继续追踪问题
  • 2018-11-27 11:23:07 by Eric Guo
    发现一个问题就是sqlserver中运行的结果与php执行的sql语句得到的结果不一致,尤其是在设计数字的时候,这时候需要特别注意
  • 2018-11-05 21:27:22 by Eric Guo
    这里尝试成功的版本有5.3 5.5 5.5n 5.6