PHP将SQL日期转换为以数字字符串形式显示的不同格式

PHP将SQL日期转换为以数字字符串形式显示的不同格式,php,mysql,date,strtotime,Php,Mysql,Date,Strtotime,我有一个查询,它列出了数据库中的行。在回显日期时,我需要将标准SQL日期格式从Y-m-dh:I:s(2001-03-10 17:16:18)转换为fj,Y,g:ia(2001年3月10日,下午5:16) 转换我的日期格式 $sqlDate = $row->updateDate; $updateDate = $phpDate = strtotime( $sqlDate ); $sqlDate = date( 'F j, Y, g:i a', $phpDate ); 然后呼出 echo $p

我有一个查询,它列出了数据库中的行。在回显日期时,我需要将标准SQL日期格式从
Y-m-dh:I:s
(2001-03-10 17:16:18)转换为
fj,Y,g:ia
(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

我不知道这些数字是多少。。。秒

在转换strotime时,我做错了什么?或者我的问题在于你是谁


谢谢您的时间。

您回显的日期不正确,请这样尝试:

$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;

$phpDate变量值存储strotime,但不正确

您可以像这样修改代码

$sqlDate = $row->updateDate;
$updateDate = $phpDate = strtotime( $sqlDate );
$sqlDate = date( 'F j, Y, g:i a', $phpDate );
$phpDate= date( 'F j, Y, g:i a', $phpDate );
echo $phpDate;
这个代码运行良好


这段代码对您很有用:)

非常简单!工作起来很有魅力。我现在明白怎么回事了。我还注意到我有
$updateDate=$phpDate=strottime($sqlDate)而$updateDate甚至不存在。-谢谢你的回答。我会在5分钟内检查为接受,当它允许我!