php5.6 串連SQL SERVER

來源:互聯網
上載者:User

標籤:alt   微軟   檔案夾   相對   fatal   原因   pac   sso   img   

PHP Fatal error:  Call to undefined function sqlsrv_connect() inphp連結sqlserver出現該錯誤;原因是:php5.3 及以上版本去掉了以前的連結方式,要想使用,就需要使用PDO或者SQLSVR ,需要加上微軟提供的dll擴充。之前在網上看到有寫到php5.5連結SQL SERVER,覺得不夠詳細,所以自己再寫一個php5.6的。 之前看到php5.5教程 http://blog.csdn.net/xocom/article/details/45840725微軟官網提供的dll不支援64位,這裡有個非官方版本的下載連結 http://download.csdn.net/detail/tan1103/8771927下載好之後解壓,其中x64檔案夾裡面的是支援64位系統的,我們用的是php5.6版本用到兩個檔案php_sqlsrv_56_nts.dll  和 php_pdo_sqlsrv_56_nts.dll或者
php_sqlsrv_56_ts.dll  和 php_pdo_sqlsrv_56_ts.dll那是用ts?還是nts呢?


ts和nts的意思是:是否安全執行緒。和php版本有關,用phpinfo();查看,列印出phpinfo,找到Thread Safety,如果是disabled就是非安全執行緒,就用nts版本;
如果是enable就用ts版本,我的是nts。


然後把相應版本的dll檔案(我的是php_sqlsrv_56_nts.dll 和 php_pdo_sqlsrv_56_nts.dll)複製到php5.6\ext(擴充程式所在的檔案夾,大多就在php的目錄的下);
然後在php.ini引進擴充,下面是我的引用路徑,D:\php5.6\ext\也是的擴充檔案所在目錄

extension=D:\php5.6\ext\php_sqlsrv_56_nts.dll
extension=D:\php5.6\ext\php_pdo_sqlsrv_56_nts.dll
(我的php.ini的extension_dir定位到C:\盤,所以我需要用絕對路徑引用,也可以修改成extension_dir=ext,然後就相對路徑引用也行了,如extension=php_sqlsrv_56_nts.dll,大多數是不用修改的,反正用絕對路徑准沒錯)
最後重啟服務(是apache的就重啟apache,iis就重啟iis),就OK了。

轉載:http://blog.csdn.net/qq_27396589/article/details/53374769

php5.6 串連SQL SERVER

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.