【问题标题】:One month gap calculation一个月的差距计算
【发布时间】:2015-06-17 19:12:59
【问题描述】:
我正在尝试从数据库中查找日期,该日期应该是距现在正好 30 天。
我想从数据库中检索DateTime 格式的日期。将其更改为带有strtotime() 的时间戳。将此提供给date() 并检索m 和i,然后进行本地计算以找出它是否小于三十天。
我想知道是否有任何直接且简单的程序可以做到这一点。
【问题讨论】:
标签:
php
mysql
date
datetime
【解决方案1】:
试试这个:
$date_formatted = date('Y-m-d H:i:s', strtotime($val->time));
要检索m 或i 或两者,试试这个:
$v = date('Y-m-d H:i:s'); //test it with now.
$date_formatted = date('m i', strtotime($v));
要从数据库中查找距现在正好 30 天的日期,您可以试试这个:
$date_formatted = date('Y-m-d H:i:s', strtotime(' +30 day'));
【解决方案3】:
如果您想直接在 SQL 中执行此操作,您可以执行此操作。
WHERE DATE_ADD(NOW(), INTERVAL 1 MONTH) = your_date_column_here
这样,您可以直接获取查询前 1 个月的日期。
或者,如果您想使用 PHP 获取从今天起提前一个月的日期的 UNIX 时间戳,请使用此
strtotime('+ 1 month');
使用“+1 mohth”而不是“+30 天”总是会提前一个月,而不仅仅是提前 30 天。