我要显示的日期无法正常显示。这是我的代码:
$row->created_when = '2016-09-27 11:06:54'
$row->approve_when = '02:43:06 09-28-2016'
<?php if(isset($records)): foreach($records as $row): ?>
......
<?php echo $row->first_name;?> <?php echo $row->last_name;?>
....
<?php if($row->approve_when==""){ ?>
<?php echo date("M d, Y H:i A", strtotime($row->created_when)); ?>
<?php echo $row->status;?>
<?php }else{ ?>
<?php echo date("M d, Y H:i A", strtotime($row->approve_when)); ?>
<?php echo $row->status;?>
<?php } ?>
但是视图中显示了什么:
创建时间: 2016年9月27日上午11:06
批准时间: 1970年1月1日02:00 AM
approve_when
无法正常转换
答案 0 :(得分:1)
$row->approve_when = '02:43:06 09-28-2016'
这是错误的日期格式。对于strtotime功能,它必须是:
$row->approve_when = '2016-28-09 02:43:06'
转换为正确日期格式的代码:
$date = '02:43:06 09-28-2016';
$ar = explode(' ', $date);
$ar2 = explode('-', $ar[1]);
$properDate = $ar2[2] . '-' . $ar2[0] . '-' . $ar2[1] . ' ' . $ar[0];
echo date('Y-m-d H:i:s', strtotime($properDate));