我怎么能得到正确的日期使用函数strtotime在php


How can I get the corret date using the function strtotime in php?

我在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

With $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

(I need always 00:00:00)

我该如何解决这个问题?

您需要将小时、分钟和秒指定为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格式,现在应该可以工作了。