删除var_dump

时间:2018-07-27 15:44:39

标签: php date datetime var-dump

我通过json以dd / mm / yyyy的格式获取日期,但要保存在mysql数据库中,它需要保存在yyyy / mm / dd中,所以我必须将其转换:

var_dump($json);
  

public'data'=>字符串'27 / 08/2018'(length = 10)

当我运行以下代码片段时:

if(isset($json->data) && $json->data !== '' && !is_null($json->data))
{
    $dt = DateTime::createFromFormat('d/m/Y', $json->data);
    var_dump($dt);
    $parts = explode(' ', $dt->date);
    if(count($parts)>=1)
        $this->Objeto->data = $parts[0];

    var_dump($this->Objeto->data);
}

我的var_dump'2018-08-27' (length=10),这是预期的结果。但是,当我删除var_dump($dt)时,它返回以下错误:

  

注意:未定义的属性:C:\ wamp64 \ www \ learning \ controller \ ControllerNotification.php中的DateTime :: $ date

为什么我删除var_dump时会发生这种情况?我该如何解决这个问题?

运行var_dump($dt);时的结果:

 object(DateTime)[8]
      public 'date' => string '2018-08-27 12:55:44.000000' (length=26)
      public 'timezone_type' => int 3
      public 'timezone' => string 'America/Sao_Paulo' (length=17)

1 个答案:

答案 0 :(得分:2)

您需要改为format()

if(isset($json->data) && $json->data !== '' && !is_null($json->data)) {
    $dt = DateTime::createFromFormat('d/m/Y', $json->data);
    $this->Objeto->data = $dt->format('Y/m/d h:i:s');
}