[分享] 使用sqlsrv連線sql server時中文帶亂碼

作者: tentenlee (天天)   2017-10-17 01:59:43
開發環境 :
windows 10 64bit
php 7.0
apache 2.4.23
使用框架 CodeIgniter 3.1.6
sqlsrv版本 4.0
sql server 2012
其實以上重點大概只有一個
遇到問題:
在php的sql字串中,有用case去判斷某個欄位後顯示中文的文字,會發現回傳的資料中
上面case設定的文字的後面會多帶幾碼亂碼。
同樣的sql 印出來後直接丟到 sql server management studio中並不會有這問題。
一值google都沒注意到這問題,設定的編碼已經是UTF-8了。
所以問題到底在哪邊呀~~~
最後去看一下微軟的sqlsrv的github 發現版本已經有更新了,
重新下載後放到ext的資料夾做更新,重新啟動後就好了
就好了..
就好了...
我的人生呀~~~~~~~
目前github已經有5.1的版本,但是感覺還是測試版本。
目前官方的教學網站 https://goo.gl/FUoMMP 這個連結是4.3版本
所以將sqlsrv更新到4.3版本後就正常了....... 但這版本需要的是php 7.0以上
希望不要也有人踩到我這浪費生命的坑呀.....
作者: gpmm (銀色)   2017-10-17 07:59:00
推一個
作者: pc031564 (pc031564)   2017-10-17 22:08:00
win32可以直接用odbc免DRV,尤其不會亂碼。

Links booklink

Contact Us: admin [ a t ] ucptt.com