PHP 连接 MSSQL 时 text 字段被无故截断

第一次使用 PHP 连接 MSSQL 的朋友经常遇到这个问题:text 字段总是会被无故截断,只能发一两千字,有时截断时还出现乱码情况,而将执行插入的 SQL 语句输出却没有任何问题。呵呵,其实这个问题很简单:

PHP 的配置文件 php.ini 中 MSSQL 部分:

 
[MSSQL]
; Allow or prevent persistent links.
mssql.allow_persistent = On
 
; Maximum number of persistent links.  -1 means no limit.
mssql.max_persistent = -1
 
; Maximum number of links (persistent+non persistent).  -1 means no limit.
mssql.max_links = -1
 
; Minimum error severity to display.
mssql.min_error_severity = 10
 
; Minimum message severity to display.
mssql.min_message_severity = 10
 
; Compatability mode with old versions of PHP 3.0.
mssql.compatability_mode = Off
 
; Connect timeout
;mssql.connect_timeout = 5
 
; Query timeout
;mssql.timeout = 60
 
; Valid range 0 - 2147483647.  Default = 4096.
mssql.textlimit = 4096
 
; Valid range 0 - 2147483647.  Default = 4096.
mssql.textsize = 4096

请看这两个配置参数:

 
; Valid range 0 - 2147483647.  Default = 4096.
mssql.textlimit = 4096
 
; Valid range 0 - 2147483647.  Default = 4096.
mssql.textsize = 4096

相信你现在已经知道了问题的关键所在,只需要将这两个数值改大即可,不过,同时也要考虑:

 
; Maximum size of POST data that PHP will accept.
post_max_size = 2M

需要根据实际情况设置。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>