我需要将已存储在数据库中的给定日期转换为某种格式。我一直试图谷歌它,但无法让它工作。
格式为输入:d-j-Y
( 06-16-2015 )
要转换的格式: F j, Y
(June 16, 2015)
我试图转换的代码,
$date = get_post_meta( $post_id, 'timeline_event_date', true );
$old_date = date('d-j-Y', $date);
$old_date_timestamp = strtotime($old_date);
$new_date = date('F j, Y', $old_date_timestamp);
var_dump(s)
var_dump
$date
:string(10) "06-16-2015"
{li> var_dump
$old_date
:string(9) "01-1-1970"
{li> var_dump
$new_date
:string(15) "January 1, 1970"
编辑重复问题
您标记的重复问题有解决方案可以解决此问题,但我觉得这对于遇到相同问题的所有WordPress用户来说都是一个很好的测试用例。
答案 0 :(得分:0)
找到解决方案,万一有人需要它:
$date = get_post_meta( $post_id, 'timeline_event_date', true );
$parsed = date_parse_from_format('n-d-Y', $date);
$old_date_timestamp = mktime(
$parsed['hour'],
$parsed['minute'],
$parsed['second'],
$parsed['month'],
$parsed['day'],
$parsed['year']
);
$new_date = date('F j, Y', $old_date_timestamp);
基本上,此代码会将string
转换为正确的日期格式。