我试图将日期从yyyy-mm-dd转换为dd-mm-yyyy(但不是SQL);然而,我不知道日期函数如何需要时间戳,我无法从这个字符串中获得时间戳。

这怎么可能呢?


当前回答

$timestamp = strtotime(your date variable); 
$new_date = date('d-m-Y', $timestamp);

有关更多信息,请参阅strtotime的文档。

或者更短:

$new_date = date('d-m-Y', strtotime(your date variable));

其他回答

您可以尝试strftime()函数。简单示例:strftime($time, '%d %m %Y');

您可以使用date()和strtotime()更改格式。

$date = '9/18/2019';

echo(’d-m-y’日期、strtotime(美元);

结果:

The 18-09-19

我们可以通过改变(d-m-y)来改变格式。

对于这种特定的转换,我们还可以使用格式字符串。

$new = vsprintf('%3$s-%2$s-%1$s', explode('-', $old));

显然,这不适用于许多其他日期格式转换,但由于我们在本例中只是重新排列子字符串,因此这是另一种可能的方法。

$timestamp = strtotime(your date variable); 
$new_date = date('d-m-Y', $timestamp);

有关更多信息,请参阅strtotime的文档。

或者更短:

$new_date = date('d-m-Y', strtotime(your date variable));

在PHP中,任何日期都可以转换为所需的日期格式,使用不同的场景,例如将任何日期格式转换为 日、日、月、年

$newdate = date("D, d M Y", strtotime($date));

它将以以下非常好的格式显示日期

2020年11月16日星期一