i我的日期存储在MySQL表中,它们设置为将当前时间戳存储在每一行中,并存储如下:
2010-05-29 01:17:35
但是我要做的是以某种方式使用PHP来分开所有内容并创建一个更像:
-May 29 2010 1:17AM
至少可以将我带到我应该走的正确道路上。任何帮助都非常感谢!
echo date('M j Y g:i A', strtotime('2010-05-29 01:17:35'));
strtotime()
将日期解析为时间戳,然后将其重新格式化为字符串
或使用date()
DateTime
或:
echo date('M j Y g:i A', strtotime('2010-05-29 01:17:35'));
$dt = new DateTime('2010-05-29 01:17:35');
echo $dt->format('M j Y g:i A');
类,您可以使用的日期范围没有限制。
如果您的表中有一个
DateTime
DATETIME
或:SELECT DATE_FORMAT(timestamp,'%M %D, %Y') FROM Mytable;
where
SELECT DATE_FORMAT(timestamp,'%Y-%m-%d') FROM Mytable;
是您的列名称。
但请注意,您会丢失可变绑定,因为MySQL将该方法的返回视为无别名的派生列。 因此,例如,如果您要在PHP脚本中传递时间戳,则将丢弃错误。 因此,只需添加一个别名即可重新将数据重新命名为变量。
timestamp
Where formatted_date是新的列名。 在PHP脚本中,如果您已获取到变量$ post,则
// in php script
$query = "SELECT DATE_FORMAT(timestamp,'%Y-%m-%d') AS formatted_date FROM Mytable";