本文實(shí)例講述了PHP連接SQL Server的方法。分享給大家供大家參考,具體如下:
之前我們實(shí)現(xiàn)了用thinkPHP5.1框架搭配的項(xiàng)目,實(shí)現(xiàn)了thinkPHP5.1與本機(jī)sql server 2008 R2的連接,并且把數(shù)據(jù)內(nèi)容顯示在頁面上。
本機(jī)的使用工具:1、編譯工具PhpStorm
2、WampServer 集成工具(Apache 2.4.33;PHP 7.0.29)
在連接過程中,有兩種方法可以連接。
第一種(用到ThinkPHP框架的,配置微軟自帶的驅(qū)動):
先把tp5的項(xiàng)目放在wamp目錄下的www里面
利用微軟提供的PHP與SQL Server 驅(qū)動包
地址:https://www.microsoft.com/en-us/download/details.aspx?id=20098
下載:SQLSRV40.EXE(根據(jù)PHP對應(yīng)的版本下載對應(yīng)的驅(qū)動)
下載完成解壓后選擇相對應(yīng)的PHP版本信息,如:本機(jī)的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
然后進(jìn)入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服務(wù)器。
用PhpStorm打開tp5項(xiàng)目,在index模版下創(chuàng)建一個config文件再創(chuàng)建database.php配置數(shù)據(jù)庫,可以參考app應(yīng)用目錄下的database.php格式,將其復(fù)制在index下config的database.php,一般修改數(shù)據(jù)庫類型,數(shù)據(jù)庫,用戶名,密碼。
接著在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);
}
}
最后調(diào)用入口文件即可訪問。
http://localhost:81/1111/tp5/public/index/test/zz
這種方法也可以用pdo_odbc方法連接sqlserver(配合thinkPHP框架)
第二種(不用到ThinkPHP框架):
*(上面的微軟驅(qū)動數(shù)據(jù)庫的方法,不用thinkPHP也是可以連接的)
用PDO_odbc來連接SQL Server 數(shù)據(jù)庫:
進(jìn)入Apache修改php.in配置文件
X:\wamp\bin\apache\apache2.4.33\bin
將extension=php_pdo_odbc.dll
前面的冒號去掉,開啟這個服務(wù),重啟Apache服務(wù)器。
在www目錄下創(chuàng)建一個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;
最后調(diào)用入口文件即可訪問。
http://localhost:81/test.php即可訪問
這些方法要注意的是:需要了解thinkPHP5.1的DB類的使用語句。根據(jù)不同的項(xiàng)目要求可以組建不同的連接方法。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL環(huán)境搭建教程
- SQL server不支持utf8 php卻用utf8的矛盾問題解決方法
- PHP5.6.8連接SQL Server 2008 R2數(shù)據(jù)庫常用技巧分析總結(jié)
- PHP7使用ODBC連接SQL Server2008 R2數(shù)據(jù)庫示例【基于thinkPHP5.1框架】
- PHP基于pdo的數(shù)據(jù)庫操作類【可支持mysql、sqlserver及oracle】
- php連接MSsql server的五種方法總結(jié)
- php連接微軟MSSQL(sql server)完全攻略
- windows server 2008/2012安裝php iis7 mysql環(huán)境搭建教程
- PHP連接SQL server數(shù)據(jù)庫測試腳本運(yùn)行實(shí)例