配置环境
- 操作系统:Windows Server 2012 R2
- PHP版本:5.5.1
- SQL Server版本:SQL Server 2012
配置步骤
[S1]
下载SQL Server 2012的驱动扩展,之前老版本中使用的PHP自带的php_mssql.dll已然行不通。
下载地址:
http://www.microsoft.com/en-us/download/details.aspx?id=20098
选择需要下载的程序:
SQLSRV32.EXE
[S2]
下载完成后双击,选择目录进行解压缩,然后会得到很多DLL文件
由于我的PHP版本为5.5.1,所以只选择含有55的DLL文件。
其中以ts结尾的文件表示线程安全,以nts结尾的文件表示非线程安全。
DLL文件中的数字是和PHP的版本相对应的
将选择的文件拷贝到 你的PHP根目录/ext/ 文件夹下
[S3]
修改PHP配置文件 php.ini,该文件可以在 你的PHP根目录/ 文件夹下找到。
打开配置文件,添加以下两行:
extension=php_sqlsrv_55_ts.dll
extension=php_pdo_sqlsrv_55_ts.dll
[S4]
下载 ODBC Driver 11 for SQL Server,如果已经安装则跳过该步。
下载地址:
https://www.microsoft.com/en-us/download/details.aspx?id=36434
下载完成后安装,安装过程中可能会提示要重启电脑,重启之后即可正常安装。
[S5]
完成上述步骤后重启Apache服务。
测试PHP配置是否成功代码:
<?php
$serverName = "localhost"; //你的数据库服务器地址
$uid = "UserID"; //你的数据库用户名
$pwd = "Password"; //你的数据库密码
$db = "Database"; //你的数据库名称
$connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>$db);
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if ($conn) {
echo("SQL Server 数据库连接成功");
} else {
echo("SQL Server 数据库连接失败,请检查相关配置");
die(print_r(sqlsrv_errors(), true));
}
?>
[S6]
在浏览器中查看上述代码的执行结果
PS
查看PHP版本的代码
<?php
echo(phpversion());
?>
PPS
在低版本中,PHP操作SQL Server的函数名均是以[mssql_]开头,在高版本中均改为[sqlsrv_]开头
具体函数请参考:
http://php.net/manual/zh/ref.sqlsrv.php
PPPS
如果在运行中出现错误:
This extension requires the ODBC Driver 11 for SQL Server
请按照[S4]步骤执行