1. 程式人生 > >Windows 2008服務器環境PHP連接SQL Server數據庫的配置及連接方法

Windows 2008服務器環境PHP連接SQL Server數據庫的配置及連接方法

word ref 網關 sage 軟件 代碼 正文 服務器 安全

背景:

  PHP程序常用的數據庫是Mysql數據庫,但是由於實際項目需要,要求PHP網站連接SQL Server數據庫查詢一些必要信息。因此,本文就來給大家介紹一下如何安裝及配置PHP擴展,可以實現PHP利用PDO函數連接SQL Server數據庫。

正文:

要讓PHP配置支持sql server,需要安裝一些必要軟件及擴展,步驟如下:

1、在微軟官方頁面https://www.microsoft.com/en-us/download/details.aspx?id=20098下載PHP擴展壓縮包程序,PHP5.4以上版本下載SQLSRV32.EXE這個文件;

2、將下載的SQLSRV32.EXE安裝到你的php安裝目錄下的ext文件中(如:C:\php\php-5.4.45\ext),安裝的擴展名稱如php_pdo_sqlsrv_54_ts.dll文件;

3、修改php.ini文件,我們安裝的PHP版本是5.4.45,所以配置擴展如extension = php_pdo_sqlsrv_54_ts.dll,保存並重啟apache服務器;

4、需要安裝Windows服務器連接sql server的驅動程序,下載地址http://www.microsoft.com/en-us/download/details.aspx?id=36434,根據Windwos服務器架構選擇即可,這裏選擇x64的msodbcsql.msi安裝,因服務器是64位系統;

5. 安裝完成後,就可以編寫PHP程序連接SQL Server數據庫了。

需要註意的是,php_pdo_sqlsrv_54_ts.dll擴展庫文件中的54表示PHP版本號,nts表示的是非線程安全,ts表示的是線程安全,可以查看phpinfo信息得到是否線程安全,如不確定建議選擇線程安全的,非線程安全主要出於性能提升考慮,可根據實際需要選擇。簡單來說,以FastCGI網關形式運行PHP要安裝非線程安全,否則安裝PHP要線程安全的,一般APACHE服務器是以模塊方式加載PHP線程,要選線程安全的。

最後給出PHP連接SQL Server數據庫的代碼實例,新建db.php文件,內容如下:

<?php
try
{ $dbName = "sqlsrv:Server=123.12.33.99,1433;Database=dbname"; $dbUser = "user"; $dbPassword = "password"; $db = new PDO($dbName, $dbUser, $dbPassword); if($db) {
echo "database connect succeed."; } } catch(PDOException $e) { $content = $e->getMessage(); echo $content; }

瀏覽器地址輸入db.php訪問地址:http://localhost/db.php,如果正常則顯示如下:

database connect succeed.

Windows 2008服務器環境PHP連接SQL Server數據庫的配置及連接方法