phpstudy鏈接SQL Server 2008數據庫 以及 php使用sql server出現亂碼解決方式

開始也嘗試本身配置php安裝環境,找到一個詳細的百度經驗http://jingyan.baidu.com/article/154b46315242b328ca8f4101.html,前面有問題也一一去解決了,但最後仍是死在Apache啓動失敗上(估計也是端口問題)。php

而後選擇了使用phpstudy集成環境。在phpstudy鏈接sql server 2008數據庫這個問題上看了很多帖(大多數是直接寫php鏈接sql server數據庫的操做,也是亂的很),這裏結合個人操做過程總結了一下:html

  • 確保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日補充:前端

  後續再次配置連接時,出現其餘問題:sql

  • 首先,是sqlsrv的擴展沒法實現,這個和phpstudy的設置有關,我反覆試了發如今「非服務模式」下,成功機率高一些;

  • 而面對啓動時端口被佔用的狀況,在進行端口檢測時,使用bat檢測,再根據PID,在任務管理器中,關閉相應程序,重啓phpstudy,選擇「非服務模式」,通常來講就能夠在,phpinfo中看到開啓了sqlsrv的擴展了;

  

  • 個人php版本是5.3,使用的dll文件以下圖,接下來重啓phpstudy,錯誤解決;

  • 補充一點,在編寫php過程當中發現,sql server調出來的數據是gb2312,而我前端寫有php的文件是utf-8格式,數據輸出,經常出現亂碼,這裏我對數據進行了轉換,下圖是轉換函數,在數據輸出時調用;

相關文章
相關標籤/搜索