PHP在查詢MSSQL資料庫的text欄位的內容時,如果內容長度過長,則會有部分內容被截取。 這也許不是我們想要的結果,解決方法:
#1、修改php.ini檔案
#開啟php.ini文件,尋找mssql.textlimit,可以找到以下內容:(推薦學習:PHP影片教學)
;Valid range 0 - 2147483647. Default = 4096. ;mssql.textlimit = 4096 ; Valid range 0 - 2147483647. Default = 4096. ;mssql.textsize = 4096
把mssql.textlimit = 4096和mssql.textsize = 4096兩行前面的分號去掉,將數值改大,重新啟動服務。
2、透過ini_set進行設定
上面說的是具有伺服器管理權限的情況下的解決方法。也許有些時候我們並沒有伺服器管理權限,那隻能在程式上設定了。
@ini_set( mssql.textsize , 200000) ;
加上這句即可以完成設定。
3、透過執行SQL語句來解決
如:mssql_query ( 'SET TEXTSIZE 65536' , $myConn );
#其中,$myConn是資料連線標識。這是比較原始的寫法,要表達的意思就是執行'SET TEXTSIZE 65536'這樣一條SQL語句。
注意:如果欄位類型是ntext,有時會出現亂碼現象,看起來有點像是內容被不正常截取。這種情況可以在SQL語句中將內容轉換成text類型,寫法如下:
select id,convert(text,content) as content from news
以上是php如何取text字段的詳細內容。更多資訊請關注PHP中文網其他相關文章!