我试图将日期从yyyy-mm-dd转换为dd-mm-yyyy(但不是SQL);然而,我不知道日期函数如何需要时间戳,我无法从这个字符串中获得时间戳。
这怎么可能呢?
我试图将日期从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));
其他回答
您可以使用date()和strtotime()更改格式。
$date = '9/18/2019';
echo(’d-m-y’日期、strtotime(美元);
结果:
The 18-09-19
我们可以通过改变(d-m-y)来改变格式。
有两种实现方法:
1.
$date = strtotime(date);
$new_date = date('d-m-Y', $date);
2.
$cls_date = new DateTime($date);
echo $cls_date->format('d-m-Y');
您可以尝试strftime()函数。简单示例:strftime($time, '%d %m %Y');
对于这种特定的转换,我们还可以使用格式字符串。
$new = vsprintf('%3$s-%2$s-%1$s', explode('-', $old));
显然,这不适用于许多其他日期格式转换,但由于我们在本例中只是重新排列子字符串,因此这是另一种可能的方法。
使用此函数可以从任何格式转换为任何格式
function reformatDate($date, $from_format = 'd/m/Y', $to_format = 'Y-m-d') {
$date_aux = date_create_from_format($from_format, $date);
return date_format($date_aux,$to_format);
}