【问题标题】:Time outputting 1970-01-01 if null?如果为空,则输出 1970-01-01 的时间?
【发布时间】:2018-03-19 06:09:46
【问题描述】:

我有一个来自 MSSQL 的已连接数据库,它的值为日期,但它也输出小时数。

我已设置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/>

【问题讨论】:

    标签: php sql-server datetime time null


    【解决方案1】:

    当您将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));
    }
    

    【讨论】:

      猜你喜欢
      • 2015-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-16
      • 2015-04-12
      • 1970-01-01
      • 2016-06-03
      相关资源
      最近更新 更多