使用php以人类可读的格式显示mysql datetime?
我正在使用以下命令保存到mysql表:使用php以人类可读的格式显示mysql datetime?,php,mysql,Php,Mysql,我正在使用以下命令保存到mysql表: $query = mysql_query("INSERT INTO test SET postit='$postit',postdate=NOW()"); 然后,我尝试使用以下方式显示它: echo "<li>" . date("D, d M y H:i:s O",$row['timestamp']) . " - " . $row['postit'] . "</li>"; echo“”。日期(“D,D M y H:i:SO”,$
$query = mysql_query("INSERT INTO test SET postit='$postit',postdate=NOW()");
然后,我尝试使用以下方式显示它:
echo "<li>" . date("D, d M y H:i:s O",$row['timestamp']) . " - " . $row['postit'] . "</li>";
echo“”。日期(“D,D M y H:i:SO”,$row['timestamp'])。" - " . $行['posit']。“ ”;
它在数据库中保存了正确的时间,但是它呈现:
星期四,2007年1月1日01:00:00+0100
有人指出这是愚蠢的吗?我总是喜欢使用这个函数:
function parse_sql_timestamp($timestamp, $format = 'd-m-Y')
{
$date = new DateTime($timestamp);
return $date->format($format);
}
这样我们甚至可以超越2038;) PHP date()函数使用Unix时间戳作为函数中的第二个变量。传递给函数的是一个MySQL时间戳。尝试使用:
echo date("D, d M y H:i:s O",strtotime($row['timestamp']));
$row['timestamp']
输出什么?数据库中now()的值是mysql中的yes,now()
是实际日期,而不是时间戳。好眼力。