1.查看php是不是线程安全版本php
查看phpinfo,找到Thread Safety,查看值为多少,disabled为非线程安全,enabled为线程安全版本。nginx
2. 从微软官网上下载sqlsrv扩展sql
百度网盘:apache
SQLSRV40.EXE安全
https://pan.baidu.com/s/1dFuWyeH服务器
SQLSRV32.EXE测试
https://pan.baidu.com/s/1hsgDj1afetch
微软官网:spa
http://www.microsoft.com/en-us/download/details.aspx?id=20098 线程
下载连接地址有四个文件:
•SQLSRV30.EXE
•SQLSRV31.EXE
•SQLSRV32.EXE
•SQLSRV40.EXE
分别支持不一样的PHp版本
•Version 4.0 supports PHP 7.0+
•Version 3.2 supports PHP 5.6, 5.5, and 5.4
•Version 3.1 supports PHP 5.5 and 5.4
•Version 3.0 supports PHP 5.4.
下载以后解压:
根据php版本号找到相应的驱动版本,其中包含n的为非线程安全版。
例如个人php版本为5.6线程安全版本,则应该复制php_sqlsrv_56_ts.dll和php_pdo_sqlsrv_56_ts.dll复制到php目录的ext文件夹下。
以后查看phpinfo能够看到扩展已经安装好了。
3. 修改php.ini配置文件:打开php.ini配置文件,在其中加上复制到php扩展中的dll库
extension=php_sqlsrv_55_nts.dll
extension=php_pdo_sqlsrv_55_nts.dll
重启apache或nginx服务器便可。
4. 安装odbc驱动
百度网盘连接:
https://pan.baidu.com/s/1dFgdrjV
微软:
https://www.microsoft.com/zh-cn/download/details.aspx?id=36434
5. 安装成功
链接测试:
$servern="localhost"; $coninfo=array("Database"=>"dbo","UID"=>"guansixu","PWD"=>"guansixu"); $conn=sqlsrv_connect($servern,$coninfo); if( $conn ) { echo "Connection established.<br />"; }else{ echo "Connection could not be established.<br />"; die( print_r( sqlsrv_errors(), true)); } sqlsrv_close($conn);
PDO方式:
$servern="localhost"; $coninfo=array("Database"=>"dbo","UID"=>"guansixu","PWD"=>"guansixu"); $conn=sqlsrv_connect($servern,$coninfo); if( $conn ) { echo "Connection established.<br />"; }else{ echo "Connection could not be established.<br />"; die( print_r( sqlsrv_errors(), true)); } $val=sqlsrv_query($conn,"select * from usertable"); while($row=sqlsrv_fetch_array($val)){ echo $row[1]."<br />"; } sqlsrv_close($conn);
附上驱动打包下载: