我有mySQL数据库的时间戳,我想格式化它。
$date = $row['date'];
$date = date("F j, Y, g:i a");
我的问题是它现在打印的不是数据库的日期。而是打印出当前日期。但这不是我需要的。
因此,如果我打印出来,我会得到正确的日期:
printf($row['date']);
但如果我打印出来,我会得到正确的格式,但不是正确的日期:
printf($date);
答案 0 :(得分:3)
您需要将该日期作为Unix时间戳传递给date()
作为第二个参数。否则date()
不知道您要格式化特定日期:
$date = date("F j, Y, g:i a", strtotime($row['date']));
这假设$row['date']
位于valid date format。
答案 1 :(得分:3)
使用此选项,因为date()
需要时间戳:
$date = date("F j, Y, g:i a", strtotime($row['date']));
否则,time()
函数将用于第二个参数并输出当前时间。 $row['date']
应该是PHP可读或时间戳(在这种情况下,您可以将strtotime()
保留)。