我有一个 MySQL DB 表,其中有一列名为"timestamp"
,类型为timestamp
,属性为on update CURRENT_TIMESTAMP
,默认值为CURRENT_TIMESTAMP
。
如果我向表中添加一条记录,指定其他值,但不指定时间戳,则时间戳会自动添加,如2016-12-28 17:02:26
.
在 PHP 中,我使用以下查询查询表
SELECT * FROM history WHERE user_id = 9 ORDER BY timestamp ASC
查询的结果被保存到$rows
,我使用 aforeach
创建一个数组,其中一些其他值已格式化。我正在尝试将时间戳格式化为英国类型 24 小时日期时间:dd/mm/yy, HH:MM:SS
.
我已经尝试了date()
和strftime()
功能如下:
$formatted_datetime = strftime("%d %m %y %H %M %S", $row["timestamp"]);
$formatted_datetime = date("d/m/y, H:i:s", $row["timestamp"]);
这两种情况都会导致以下通知和错误输出的日期时间,例如01 01 70 00 33 36
:
注意:在第 20 行的 /home/ubuntu/workspace/pset7/public/history.php 中遇到格式不正确的数值
我是 PHP 和 MySQL 的新手,到目前为止,我看到的其他问题或文档都没有成功解决执行此转换的问题。我不明白为什么strftime()
不起作用,也不知道如何正确执行此操作?