Php 如何从特定日期起30天内获得确切日期?

Php 如何从特定日期起30天内获得确切日期?,php,mysql,date,Php,Mysql,Date,我的mysql日期是这样的2013-10-16 17:44:13。我不能使用例如第10个月,并将其更改为第11个月,因为这可能是31天或29天,具体取决于月份 我只能考虑将2013-10-16 17:44:13转换为时间戳大于+30*24*60*30,然后再将这个新的时间戳转换回mysql格式 有更好的办法吗 您可以使用: $date = date('Y-m-d H:i:s', strtotime($date . ' +30 days')); 或者直接在MySQL中使用: 如果运行较新版本的M

我的mysql日期是这样的
2013-10-16 17:44:13
。我不能使用例如第10个月,并将其更改为第11个月,因为这可能是31天或29天,具体取决于月份

我只能考虑将
2013-10-16 17:44:13
转换为时间戳大于+30*24*60*30,然后再将这个新的时间戳转换回mysql格式

有更好的办法吗

您可以使用:

$date = date('Y-m-d H:i:s', strtotime($date . ' +30 days'));
或者直接在MySQL中使用:

如果运行较新版本的MySQL,则不需要使用
DATE\u ADD

SELECT (`date` + INTERVAL 30 DAY) as `date` FROM `table`
请注意,
strotime
足够智能,而MySQL要求您使用
DAY
。不是

编辑:我找不到任何证据证明旧版本中需要
日期添加
,但我发誓我在某处听说过。带上一粒盐,用你喜欢的任何方法。

你可以用以下方法:

$date = date('Y-m-d H:i:s', strtotime($date . ' +30 days'));
或者直接在MySQL中使用:

如果运行较新版本的MySQL,则不需要使用
DATE\u ADD

SELECT (`date` + INTERVAL 30 DAY) as `date` FROM `table`
请注意,
strotime
足够智能,而MySQL要求您使用
DAY
。不是


编辑:我找不到任何证据证明旧版本中需要
日期添加
,但我发誓我在某处听说过。尽管如此,还是用你喜欢的方法吧。

既然你提到了mysql,你可以用mysql函数来实现它

select NOW() + interval 30 day as NEW_DATE
现在,可以用数据库中的日期替换

select date_field + interval 30 day as NEW_DATE from YOUR_DB

既然你提到了mysql,你可以用mysql函数来实现它

select NOW() + interval 30 day as NEW_DATE
现在,可以用数据库中的日期替换

select date_field + interval 30 day as NEW_DATE from YOUR_DB

1.一分钟有60秒,而不是30秒。[code>30*24*60*60]2。1.一分钟有60秒,而不是30秒。[code>30*24*60*60]2。谢谢,就是这个:)谢谢,就是这个:)