我有DateTime
个对象,我需要将其移至第二天X
。例如,如果X
是15:
2011-02-03⇒2011-02-15#早于15岁,留在本月
2011-02-15⇒2011-02-15#今天是15岁,今天待在这里
2011-02-20⇒2011-03-15#晚于15岁,移至下个月
我知道我可以使用DateTime::format()
和DateTime::setDate()
的组合,但可以通过一次调用将 设为DateTime::modify()
吗?
!它也必须在 PHP/5.2.14
下工作。
包含“第15天”的表达式甚至不解析。
答案 0 :(得分:10)
$x = 15; // day 15 of the month
$d = $date->format('d');
$m = $date->format('m');
$y = $date->format('Y');
$date->setDate($y , $m , $x); // set the wanted day for the month
//if the wanted day was before the current day, add one month
if( $d > $x ){ // is next month's one.
$date->modify($date, '+1 month');
}