我有一个查询列出了数据库中的行。当回显日期时,我需要将标准的SQL日期格式从Y-m-d H:i:s(2001-03-10 17:16:18)转换为F j, Y, g:i a(2001年3月10日下午5:16)。
转换我的日期格式

$sqlDate = $row->updateDate;
$updateDate = $phpDate = strtotime( $sqlDate );
$sqlDate = date( 'F j, Y, g:i a', $phpDate );

然后呼出
echo $phpDate;

当$phpDate被回显时,它显示为一个由10个数字组成的字符串,如下所示:1454241452
我不知道那些数字是什么。。。几秒钟?
在转换strtotime时我做错了什么?或者我的问题出在艾尔莎身上?
谢谢你抽出时间。

最佳答案

您正在回显错误的日期变量,请按如下方式尝试:

$sqlDate = $row->updateDate;  # get date from database
$utime = strtotime($sqlDate); # this is unix time (check php.net/date)
$newdate = date( 'F j, Y, g:i a', $utime); # convert unix time to desired format
echo $newdate;

或一行:
$newdate = date( 'F j, Y, g:i a', strtotime($row->updateDate));
echo $newdate;

09-25 18:30