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 相关文章推荐
php xml文件操作实现代码(二)
Mar 20 PHP
ExtJS与PHP、MySQL实现存储的方法
Apr 02 PHP
php 带逗号千位符数字的处理方法
Jan 10 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
Jun 10 PHP
解析PHP生成静态html文件的三种方法
Jun 18 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
PHP基于mssql扩展远程连接MSSQL的简单实现方法
Oct 08 PHP
PHP+Ajax 检测网络是否正常实例详解
Dec 16 PHP
PHP用continue跳过本次循环中剩余代码的注意点
Jun 27 PHP
Symfony2针对输入时间进行查询的方法分析
Jun 28 PHP
PHP创建文件及写入数据(覆盖写入,追加写入)的方法详解
Feb 15 PHP
Laravel 5+ .env环境配置文件详解
Apr 06 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程序中的常见漏洞进行攻击(上)
2006/10/09 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
浅析PHP页面局部刷新功能的实现小结
2013/06/21 PHP
php动态函数调用方法
2015/05/21 PHP
php强制用户转向www域名的方法
2015/06/19 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
2017/04/25 PHP
jquery css 设置table的奇偶行背景色示例
2014/06/03 Javascript
JS实现快速的导航下拉菜单动画效果附源码下载
2016/11/01 Javascript
vue中本地静态图片路径写法
2018/03/06 Javascript
jquery图片预览插件实现方法详解
2019/07/18 jQuery
Javascript操作select控件代码实例
2020/02/14 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
详解ES6 扩展运算符的使用与注意事项
2020/11/12 Javascript
javascript中call,apply,bind的区别详解
2020/12/11 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
[01:38]DOTA2第二届亚洲邀请赛中国区预选赛出线战队晋级之路
2017/01/17 DOTA
深入分析在Python模块顶层运行的代码引起的一个Bug
2014/07/04 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
python将ansible配置转为json格式实例代码
2017/05/15 Python
使用python实现个性化词云的方法
2017/06/16 Python
Python基于mysql实现学生管理系统
2019/02/21 Python
解决yum对python依赖版本问题
2019/07/05 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
2019/11/07 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
速比涛英国官网:Speedo英国
2019/07/15 全球购物
汽车维修专业毕业生的求职信分享
2013/12/04 职场文书
职工运动会邀请函
2014/01/19 职场文书
九年级物理教学反思
2014/01/29 职场文书
大学生毕业求职信
2014/06/12 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
2014年实习生工作总结
2014/11/27 职场文书
团委副书记工作总结
2015/08/14 职场文书
Mysql - 常用函数 每天积极向上
2021/04/05 MySQL
eclipse创建项目没有dynamic web的解决方法
2021/06/24 Java/Android