Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 日期时间配置_Php_Sql Server - Fatal编程技术网

Php 日期时间配置

Php 日期时间配置,php,sql-server,Php,Sql Server,在我的MSSQL数据库表中,列时间写在2019年12月10日10:02PM,列的数据类型为varchar(100) 未捕获异常:DateTime::\构造():无法分析时间字符串 (WedeEurope/Berlin2019-12-11T12:23:53+01:00 11 2019 12:23PMDec) 位置0(W):在中的数据库中找不到时区 首先,我将日期列的数据类型从varchar更改为datetime 接下来创建一个select语句,从表中获取信息,同时将其转换为如下所示的时间值- $r

在我的MSSQL数据库表中,列时间写在2019年12月10日10:02PM,列的数据类型为varchar(100)

未捕获异常:DateTime::\构造():无法分析时间字符串 (WedeEurope/Berlin2019-12-11T12:23:53+01:00 11 2019 12:23PMDec) 位置0(W):在中的数据库中找不到时区


首先,我将日期列的数据类型从
varchar
更改为
datetime

接下来创建一个select语句,从表中获取信息,同时将其转换为如下所示的时间值-

$result = sqlsrv_query($con, "
select 
    convert(varchar, DATETIME_COLUMN, 114) as DATETIME_COLUMN
from
    DATABASE_TABLE", array());

while($row = sqlsrv_fetch_array($result))
{
    $_TimeColumn = $row['DATETIME_COLLUMN'];
}

一旦您回显$\u TimeColumn,它将仅以毫秒为单位输出24小时内的时间。这样就可以在不进行手动转换的情况下将其放入代码中,并且您可以正确使用该值

你怎么会把date collum的数据类型设为varchar而不是date/datetime?数据库是一个Template是$\u TimeColumn变量从数据库中获取它的值吗?是的,就像你意识到的那样
$now=new datetime()
$now=newdatetime(日期(“Y-m-dh:i:s”))相同
$result = sqlsrv_query($con, "
select 
    convert(varchar, DATETIME_COLUMN, 114) as DATETIME_COLUMN
from
    DATABASE_TABLE", array());

while($row = sqlsrv_fetch_array($result))
{
    $_TimeColumn = $row['DATETIME_COLLUMN'];
}