開始也嘗試自己配置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 2 $serverName = "填數據庫服務器地址"; //數據庫服務器地址 3 $uid = "填數據庫用戶名"; //數據庫用戶名 4 $pwd = "填數據庫密碼"; //數據庫密碼 5 6 $connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>"填數據庫名稱"); 7 $conn = sqlsrv_connect( $serverName, $connectionInfo); 8 9 if( $conn == false){ 10 echo "連接失敗!"; 11 die( print_r( sqlsrv_errors(), true)); 12 }else{ 13 echo "連接成功!"; 14 } 15 ?>
2016年8月1日補充:
后續再次配置鏈接時,出現其他問題:
- 首先,是sqlsrv的擴展無法實現,這個和phpstudy的設置有關,我反復試了發現在“非服務模式”下,成功概率高一些;
- 而面對啟動時端口被占用的情況,在進行端口檢測時,使用bat檢測,再根據PID,在任務管理器中,關閉相應程序,重啟phpstudy,選擇“非服務模式”,一般來說就可以在,phpinfo中看到開啟了sqlsrv的擴展了;
- 還有可能出現類似下圖的報錯,這種錯誤,可以參考文章phpstudy連接不上sqlserver的解決步驟
- 我的php版本是5.3,使用的dll文件如下圖,接下來重啟phpstudy,錯誤解決;
- 補充一點,在編寫php過程中發現,sql server調出來的數據是gb2312,而我前端寫有php的文件是utf-8格式,數據輸出,常常出現亂碼,這里我對數據進行了轉換,下圖是轉換函數,在數據輸出時調用;