有没有一种简短的方法可以将DateTime修改为"今天",但保留以前存储的时间?

ins*_*ere 6 php datetime

有一个对象DateTime.我想把它设置为今天并保持时间.

例如:

  • 它的设置为2012-10-12 10:30:00
  • 它应该成为2012-11-22 10:30:00

这当然不会起作用:

// this obviously changes it to 2012-11-22 00:00:00
$date->modify('today'));
Run Code Online (Sandbox Code Playgroud)

这会有效,但似乎有点费力:

$clone = clone $date();
$date->modify('today')->setTime($clone->format('H'), $clone->format('i'));
Run Code Online (Sandbox Code Playgroud)

有更短/更有效的方式吗?

jau*_*tte 7

不是更好:

$newDate = new DateTime('today '.$date->format('H:i'));
Run Code Online (Sandbox Code Playgroud)

  • +1 `$date->modify( 'today ' . $date->format( 'H:i' ) );` 当然也可以。 (2认同)