PHP MySQL日期函数

时间:2012-03-15 12:27:42

标签: php mysql

我在PHP和MySQL中都使用日期。我用来以unix格式转换日期的EVerytime。但是这次我把数据库中的字段作为日期。但问题是采用yyyy-mm-dd格式。我想以dd-mm-yyyy格式存储它。如果我设置DB的默认设置,这是否可行。或者每次我必须在PHP中爆炸dd-mm-yyyy格式并将其转换为YYYY-MM-DD格式。这是我的第一个疑问。

第二个查询是我希望从今天的日期获取记录。我是指今天之后的日期。就像今天那么明天那么......就可以在日期字段中使用订单了。

4 个答案:

答案 0 :(得分:3)

只需使用:

$date = date('d-m-Y', strtotime($dateFromDB));

这将从MySQL DateTime转换为您指定的格式。

可以按日期字段排序,例如:

SELECT *
FROM table
WHERE date > [yourDate]
ORDER BY date [DESC | ASC]

答案 1 :(得分:0)

你的第二个要求与第一个要求相矛盾 如果您以dd-mm-yyyy格式存储日期,则无法对日期进行排序。

所以 - 是的,你必须在PHP中“爆炸”dd-mm-yyyy日期或以任何其他方式格式化它。这不是什么大不了的事。每个人都这样做。

答案 2 :(得分:-1)

如果您有'datetime'类型的字段,则可以使用MySQL-Command:FROM_UNIXTIME(%d)进行转换。 'order by'应该没问题。

答案 3 :(得分:-1)

以yyyy-mm-dd的默认格式存储日期

当你想要在前端显示时

使用以下查询

select otherFields, date_format(dateField,'%d-%m-%Y') from tableName;

按日期订购

SELECT * FROM tbl 
   ORDER BY date DESC