标签: php datetime
我希望获得一周前的日期时间,以便在查询中使用它。所以我已经完成了:
$date = new DateTime(); $date->sub(new DateInterval('P7D')); $date = $date->format('Y-m-d H:i:s');
但由于某种原因,这是行不通的。我知道我做错了什么?
答案 0 :(得分:13)
DateTime::sub()返回一个新的DateTime对象。它根本不会改变原始对象。
DateTime::sub()
$date = new DateTime(); $newdate = $date->sub(new DateInterval('P7D')); $date = $newdate->format('Y-m-d H:i:s');
Demo
如果你想这样做更简单一点:
$date = new DateTime('-1 week'); $date = $date->format('Y-m-d H:i:s');