PHP 转换日期格式 dd/mm/yyyy => yyyy-mm-dd
2022-08-30 07:15:22
我正在尝试将日期从 转换为 .我使用了mktime()函数和其他函数,但我似乎无法使其工作。我已经设法使用分隔符来达到原始日期,但是我没有成功更改格式并用.dd/mm/yyyy => yyyy-mm-dd
explode
'/'
'/'
'-'
任何帮助将不胜感激。
我正在尝试将日期从 转换为 .我使用了mktime()函数和其他函数,但我似乎无法使其工作。我已经设法使用分隔符来达到原始日期,但是我没有成功更改格式并用.dd/mm/yyyy => yyyy-mm-dd
explode
'/'
'/'
'-'
任何帮助将不胜感激。
通过查看各个组件之间的分隔符来消除或格式中的日期的歧义:如果分隔符是斜杠(),则假定为美式;而如果分隔符是短划线()或点(),则假定为欧洲格式。点击此处查看更多内容。
m/d/y
d-m-y
/
m/d/y
-
.
d-m-y
使用默认日期函数。
$var = "20/04/2012";
echo date("Y-m-d", strtotime($var) );
编辑我刚刚测试了它,不知何故,PHP不能很好地与dd / mm / yyyy格式一起使用。这是另一种解决方案。
$var = '20/04/2012';
$date = str_replace('/', '-', $var);
echo date('Y-m-d', strtotime($date));
尝试使用 DateTime::createFromFormat
$date = DateTime::createFromFormat('d/m/Y', "24/04/2012");
echo $date->format('Y-m-d');
输出
2012-04-24
编辑:
如果日期是 5/4/2010(D/M/YYYY 或 DD/MM/YYYY),则以下此方法用于将 5/4/2010 转换为 2010-4-5(YYYY-MM-DD 或 YYYY-M-D)格式。
$old_date = explode('/', '5/4/2010');
$new_data = $old_date[2].'-'.$old_date[1].'-'.$old_date[0];
输出:
2010-4-5