我们知道mssql不像php那样可以使用time哦,他生成的是时间格式DateTime这样就显示不对了,如下
代码如下 | 复制代码 |
while( $row = sqlsrv_fetch_array( $result, SQLSRV_FETCH_ASSOC)) } 结果是 DateTime Object |
解决办法
第一个方法:php文档开头定义ini_set(”mssql.datetimeconvert”,0);
第二个方法:修改php.ini,找到;mssql.datetimeconvert = On ,去掉前面的分号,修改on为off。
第三个方法:只有把mssql的时间字段用convert函数转换成字符串。
比如 SELECT *,convert(char,datetime字段,120) as str_datetime FROM 表名
这个str_datetime就是字符串了。第三个参数为120,刚好是我们需要的格式 yyyy-mm-dd hh:ii:ss