PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】


Posted in PHP onMay 06, 2019

本文实例讲述了PHP连接SQL Server的方法。分享给大家供大家参考,具体如下:

之前我们实现了用thinkPHP5.1框架搭配的项目,实现了thinkPHP5.1与本机sql server 2008 R2的连接,并且把数据内容显示在页面上。

本机的使用工具:1、编译工具PhpStorm

2、WampServer 集成工具(Apache 2.4.33;PHP 7.0.29)

在连接过程中,有两种方法可以连接。

第一种(用到ThinkPHP框架的,配置微软自带的驱动):

先把tp5的项目放在wamp目录下的www里面

利用微软提供的PHP与SQL Server 驱动包

地址:https://www.microsoft.com/en-us/download/details.aspx?id=20098

下载:SQLSRV40.EXE(根据PHP对应的版本下载对应的驱动)

下载完成解压后选择相对应的PHP版本信息,如:本机的PHP是 7.0.29版本,线程安全,64位。

选择以下文件:

php_pdo_sqlsrv_7_ts_x64.dll

php_sqlsrv_7_ts_x64.dll

将其

放置

X:\wamp\bin\php\php7.0.29\ext

然后进入Apache修改php.in配置文件

X:\wamp\bin\apache\apache2.4.33\bin

在extension=php_gd2.dll和extension=php_gettext.dll之间添加

extension=php_gd2.dll
extension=php_sqlsrv_7_ts_x86.dll
extension=php_pdo_sqlsrv_7_ts_x86.dll
extension=php_gettext.dll

之后重启Apache服务器。

用PhpStorm打开tp5项目,在index模版下创建一个config文件再创建database.php配置数据库,可以参考app应用目录下的database.php格式,将其复制在index下config的database.php,一般修改数据库类型,数据库,用户名,密码。

接着在controller控制器下建立一个test.class.php文件,代码如下

<?php
namespace app\index\controller;
use think\Db;
use think\Controller;
class Test extends Controller
{
public function zz(){
$data= Db::query('SELECT top 100 * FROM V_XZ_SPZD_KC');
var_dump($data);
}
}

最后调用入口文件即可访问。

http://localhost:81/1111/tp5/public/index/test/zz

这种方法也可以用pdo_odbc方法连接sqlserver(配合thinkPHP框架)

第二种(不用到ThinkPHP框架):

*(上面的微软驱动数据库的方法,不用thinkPHP也是可以连接的)

用PDO_odbc来连接SQL Server 数据库:

进入Apache修改php.in配置文件

X:\wamp\bin\apache\apache2.4.33\bin
extension=php_pdo_odbc.dll前面的冒号去掉,开启这个服务,重启Apache服务器。

在www目录下创建一个test.php文件

代码如下:

<?php
header("Content-type: text/html; charset=gbk");//使页面不会乱码
$hostname='192.168.1.215';
$dbname='ZD';
$username='Reader';
$password='TestReader';
//使用PDO_ODBC方式连接
$dbDB = new PDO("odbc:Driver={SQL Server};Server=$hostname;Database=$dbname", $username, $password);
$sql = "SELECT top 100 * FROM V_DY_SPZD";
foreach ($dbDB->query($sql) as $row) {
var_dump($row);
//print_r($row);
}
exit;

最后调用入口文件即可访问。

http://localhost:81/test.php即可访问

这些方法要注意的是:需要了解thinkPHP5.1的DB类的使用语句。根据不同的项目要求可以组建不同的连接方法。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
人大复印资料处理程序_输入篇
Oct 09 PHP
PHP开发过程中常用函数收藏
Dec 14 PHP
php下获取客户端ip地址的函数
Mar 15 PHP
PHP 循环列出目录内容的函数代码
May 26 PHP
PHP+JS+rsa数据加密传输实现代码
Mar 23 PHP
php对二维数组按指定键值key排序示例代码
Nov 26 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
May 10 PHP
destoon整合ucenter后注册页面不跳转的解决方法
Jun 21 PHP
Yii 快速,安全,专业的PHP框架
Sep 03 PHP
CodeIgniter基于Email类发邮件的方法
Mar 29 PHP
Laravel搭建后台登录系统步骤详解
Jul 26 PHP
PHP实现的AES 128位加密算法示例
Sep 16 PHP
php + WebUploader实现图片批量上传功能
May 06 #PHP
thinkPHP5.1框架路由::get、post请求简单用法示例
May 06 #PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
May 06 #PHP
PHP实现八皇后算法
May 06 #PHP
Laravel中10个有用的用法小结
May 06 #PHP
Mac下快速搭建PHP开发环境步骤详解
May 05 #PHP
ThinkPHP3.2框架操作Redis的方法分析
May 05 #PHP
You might like
PHP中使用crypt()实现用户身份验证的代码
2012/09/05 PHP
YII实现分页的方法
2014/07/09 PHP
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
PHP使用token防止表单重复提交的方法
2016/04/07 PHP
Yii CDBCriteria常用方法实例小结
2017/01/19 PHP
php use和include区别总结
2019/10/13 PHP
禁止刷新,回退的JS
2006/11/25 Javascript
用Javascript读取中文COOKIE的解决办法
2007/02/15 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
C++中的string类的用法小结
2015/08/07 Javascript
JavaScript Math.round() 方法
2015/12/18 Javascript
jQuery实现文字自动横移
2017/01/08 Javascript
vue-resourse将json数据输出实例
2017/03/08 Javascript
微信小程序 中wx.chooseAddress(OBJECT)实例详解
2017/03/31 Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
2017/07/05 Javascript
详解win7 cmd执行vue不是内部命令的解决方法
2017/07/27 Javascript
vue router-link传参以及参数的使用实例
2017/11/10 Javascript
Bootstrap popover 实现鼠标移入移除显示隐藏功能方法
2018/01/24 Javascript
vue form check 表单验证的实现代码
2018/12/09 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
[01:03:51]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第三场
2018/04/09 DOTA
[36:20]KG vs SECRET 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
关于Django外键赋值问题详解
2017/08/13 Python
python快速建立超简单的web服务器的实现方法
2018/02/17 Python
python 五子棋如何获得鼠标点击坐标
2019/11/04 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
美国创意之家:BulbHead
2017/07/12 全球购物
求职信范文怎么写
2014/01/29 职场文书
2014年驾驶员工作总结
2014/11/18 职场文书
黄河绝恋观后感
2015/06/08 职场文书
《乘法分配律》教学反思
2016/02/24 职场文书
PHP 技巧 * SVG 保存为图片(分享图生成)
2021/04/02 PHP
Python关于OS文件目录处理的实例分享
2021/05/23 Python
vue-cli4.5.x快速搭建项目
2021/05/30 Vue.js