如何使用php中的函数strtotime获取更正日期?

时间:2015-06-09 22:52:04

标签: php date timestamp strtotime

我在php中有这个功能:

private function setInfoTareasDiarias($aDataTarea,$idUsu,$seccion){ 

        print_r($aDataTarea['fecha']);
        $date=date("Y/m/d 00:00:00", strtotime($aDataTarea['fecha']));
        $aData['porcentaje']=$aDataTarea['porcentaje'];
        $aData['fecha_termino']=$date;
        $aData['descripcion']=$aDataTarea['descripcion'];
        $aData['id_tarea']=$aDataTarea["idTarea"];
        $aData['id_seccion']=$seccion;

        $this->aDatosInfoTareasDiarias[]=$aData;

        print_r($this->aDatosInfoTareasDiarias);
    }

print_r($aDataTarea['fecha']);打印此格式:

示例:2015/06/9

使用$date=date("Y/m/d 00:00:00", strtotime($aDataTarea['fecha']));

$aData['fecha_termino']=$date;

我需要打印:

  

[fecha_termino] => 2015/06/09 00:00:00

但打印:

  

[fecha_termino] => 1969/12/31 00:00:00

(我需要00:00:00)

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您需要将小时,分钟和秒指定为H:i:s,如下所示:

$date = date("Y/m/d H:i:s", strtotime($aDataTarea['fecha'], mktime(0, 0, 0)));

您得到1969/12/31 00:00:00的原因是因为这是默认的unix时间戳,这基本上意味着当您尝试从给定时间戳生成日期时出现错误。试试上面显示的H:i:s格式,这应该适合你。