Change datetime format to Y-m-d, but the datetime is like 7/12/17 6:20:39 pm
编辑:
我需要将这个日期时间从
这是针对PHP或CodeIgniter项目的。
我从其他报告中得到一些数据格式不好。
1 2 3 4 5 | datetime 7/12/17 12:15:23 pm (dd/mm/yy H:i:s) format 8/12/17 5:18:12 am 20/12/17 5:12:24 pm 21/12/17 12:17:37 pm |
如果我得到使用第一格式日期的示例。
1 2 | $example_date ="7/12/17 12:15:23 pm"; // d F Y : 07-December-2017 12:15:23 $format_date = $date("Y-m-d", strtotime($example_date)); |
印刷体:
在
通常我们可以这样更改日期:
1 2 |
Result from echo
$format_date =>2017-12-13 12:08:16 is correct. If the year is 2017 and this is what I wanted to.
您可以使用
1 2 3 4 5 | $example_datetime ="13/12/2017 12:08:16 pm"; $date=DateTime::createFromFormat('d/m/Y H:i:s a', $example_datetime ); $output=$date->format('Y-m-d H:i:s'); echo $output; // -> 2017-12-13 12:08:16 |
对于输入日期戳中的2位年份,而不是大写的
1 2 3 4 5 | $example_datetime ="13/12/17 12:08:16 pm"; $date=DateTime::createFromFormat('d/m/y H:i:s a', $example_datetime ); $output=$date->format('Y-m-d H:i:s'); echo $output; // -> 2017-12-13 12:08:16 |
试试这个
1 2 3 | $example_datetime ="13/12/2017 12:08:16 pm"; // (dd/mm/yy H:i:s) format $date = str_replace('/', '-', $example_datetime); echo date("Y-m-d H:i:s", strtotime($date)); // Y-m-d H:i:s |
Dates in the m/d/y or d-m-y formats are disambiguate by looking at the
separator between the various components: if the separator is a slash
(/), then the American m/d/y is assumed; whereas if the separator is a
dash (-) or a dot (.), then the European d-m-y format is assumed.
Check more here: http://php.net/manual/en/function.strtotime.php