开始也尝试自己配置php安装环境,找到一个详细的百度经验http://jingyan.baidu.com/article/154b46315242b328ca8f4101.html,前面有问题也一一去解决了,但最后还是死在Apache启动失败上(估计也是端口问题)。
然后选择了使用phpstudy集成环境。在phpstudy连接sql server 2008数据库这个问题上看了不少帖(大多数是直接写php连接sql server数据库的操作,也是乱的很),这里结合我的操作过程总结了一下:
- 确保phpstudy成功启动,在PHP扩展里勾选php_sqlsrv和php_pdo_sqlsrv两项;
- 安装Microsoft SQL Server 2008 Native Client,这一步很重要。
- 测试,在根目录添加index.php文件,代码内容如下:
-
1 <?php
View Code
2 2
3 3 $serverName = "localhost"; //数据库服务器地址
4 4
5 5 $uid = "sa"; //数据库用户名
6 6
7 7 $pwd = ""; //数据库密码
8 8
9 9 $connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>"填数据库名称");
10 10
11 11 $conn = sqlsrv_connect( $serverName, $connectionInfo);
12 12
13 13 if( $conn == false)
14 14
15 15 {
16 16
17 17 echo "连接失败!";
18 18
19 19 die( print_r( sqlsrv_errors(), true));
20 20
21 21 }
22 22 else{
23 23 echo "连接成功!";
24 24 }
25 25 ?>
2016年8月1日补充:
后续再次配置链接时,出现其他问题:
- 首先,是sqlsrv的扩展无法实现,这个和phpstudy的设置有关,我反复试了发现在“非服务模式”下,成功概率高一些;
- 而面对启动时端口被占用的情况,在进行端口检测时,使用bat检测,再根据PID,在任务管理器中,关闭相应程序,重启phpstudy,选择“非服务模式”,一般来说就可以在,phpinfo中看到开启了sqlsrv的扩展了;
- 还有可能出现类似下图的报错,这种错误,可以参考文章phpstudy连接不上sqlserver的解决步骤
- 我的php版本是5.3,使用的dll文件如下图,接下来重启phpstudy,错误解决;
- 补充一点,在编写php过程中发现,sql server调出来的数据是gb2312,而我前端写有php的文件是utf-8格式,数据输出,常常出现乱码,这里我对数据进行了转换,下图是转换函数,在数据输出时调用;