在 php 中从没有时间的字符串中获取日期

Getting date from a string without time in php

我必须将日期为“1990/07/22”的字符串输入转换为日期为 22/07/1990,我的函数如下:

public function($date){
    $date_format_sec = strtotime($date);
    $date_of_birth = new \DateTime('@'.$date_format_sec);
}

上传日期为 21/07/1990,因为我没有提供 time.How 以获得与输入相同的确切日期。

您可以将日期格式化为 php

$formatedDate = $date_of_birth->format('d-m-Y');

Documentation

    $input = '1990/07/22';
    $date = \DateTime::createFromFormat('Y/m/d', $input)->format('d-m-Y');
    public function formatDate($date) {return date('d/m/Y', strtotime($date));}

如我所说,您不需要使用 strtotime,如果 $date 字符串是有效日期,class DateTime 将读取它。之后你可以使用 format.

在此示例中,我将格式始终设置为您期望的格式,而您可以输入它接受的任何其他格式。

public function getMyDate($date, $format = 'd/m/Y') {
    $date_of_birth = new \DateTime($date);

    return $date_of_birth->format($format);
}