PHP实战PHP经验分享

XAMPP下如何使用sqlsrv扩展

2017-01-12  本文已影响211人  格吾刚哥

环境:
xampp 1.8.3版本,php版本为php5.6.4

先到这个页面下载sqlserver的驱动程序。

具体需要下载的驱动和php对应关系

3.2
5.6、5.5 和 5.4

3.1
5.5 和 5.4

3.0
5.4

下载之后,解压缩到某个目录,就可以找到对应的dll(ts代表线程安全,nts代表非线程安全)

我这里使用的是php_pdo_sqlsrv_54_ts.dll,php_sqlsrv_54_ts.dll,将这2个文件拷贝到你的xammp目录下的php/ext 文件夹下,

修改php.ini

[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_56_ts.dll
[PHP_SQLSRV]
extension=php_sqlsrv_56_ts.dll

保存后重启apache,然后使用phpinfo() 查看是否支持sqlsrv扩展

phpinfo

然后,你可以使用一段测试代码进行测试。

<?php
header(“content-type:text/html; charset=utf-8”);
$serverName = “(local)”;$uid = “用户名”;$pwd = “密码”;
$connectionInfo = array(“UID”=>$uid,”PWD”=>$pwd,”Database”=>”test”);
$conn = sqlsrv_connect( $serverName,$connectionInfo);if( $conn == false){echo “连接失败!”;die( print_r( sqlsrv_errors(), true));}
$query = sqlsrv_query($conn, “select top 8 id,title,content from test.dbo.test”);
while($row = sqlsrv_fetch_array($query)){echo $row[‘id’].”######”.iconv(‘GB2312′,’UTF-8’,$row[‘title’]).”######”.iconv(‘GB2312′,’UTF-8’,$row[‘content’]).”<br/>”;}
?>

如果使用的是Codeigniter框架,只需要修改配置文件如下:

$db['default']['hostname'] = "192.xx.xx.xx";//这里只需要地址$db['default']['username'] = "sa";
$db['default']['password'] = "password";
$db['default']['database'] = "dbname";
$db['default']['dbdriver'] = "sqlsrv";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = FALSE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";

当然实际测试后之后,发现连接的时候还是出错了,这里需要安装odbc 扩展,具体可以参照这个页面 下载对应的msi版本,安装即可。

上一篇下一篇

猜你喜欢

热点阅读