输出1970-01-01的时间如果为空?

时间:2018-03-19 06:09:46

标签: php sql-server datetime time null

我有一个来自MSSQL的连接数据库,它具有date的值,但它也输出了几个小时。

我已将Y-M-D设置为删除它,但是,如果用户尚未重新签名,则为空。但输出结果显示1970年,即使我没有在其中设置任何内容。

如果我删除date(y-m-d etcetc...),则表示没有值。但如果用户辞职,它仍然会显示烦人的时间。

可能的解决办法是什么?

<label>Enrolled since</label>
<input value="<?= date('Y-m-d', strtotime($res->DateHired)); ?>" type="text" name="enrolled" readonly/>

<label>Not Enrolled since</label>
<input value="<?= date('Y-m-d', strtotime($res->ResignationDate)); ?>" type="text" name="notenrolled" readonly/>

1 个答案:

答案 0 :(得分:0)

当您将null传递给strtotime时,您将获得false。现在,date('Y-m-d', false)date('Y-m-d', null)date('Y-m-d', 0)相同,始终代表Unix time

如果您不想在value中使用值,则应明确使用条件:

if($res->DateHired)
{
    date('Y-m-d', strtotime($res->DateHired));
}