为一天的开头和结尾创建DateTime字符串

adi*_*dit 4 php

如果我有以下字符串:

"2013-10-28"
Run Code Online (Sandbox Code Playgroud)

当我DateTime使用以下函数转换为a时:

new \DateTime("2013-10-28");
Run Code Online (Sandbox Code Playgroud)

它总是给我一个DateTime没有设定的时间.

我想要两个DateTime:

  • 一个标记当天的开始,意思是00:00:00
  • 另一个DateTime是在同一天,但在23:59:59结束.

鉴于上面的字符串,我该怎么做?

Dan*_*per 17

使用DateTime :: setTime

$d = new \DateTime("2013-10-28");
$d->setTime(23, 59, 59);
Run Code Online (Sandbox Code Playgroud)


Com*_*eek 8

看看所有可能的复合格式.

对于您的用例,MySQL格式应该是最简单的:

new \DateTime("2013-10-28 00:00:00");
new \DateTime("2013-10-28 23:59:59");
Run Code Online (Sandbox Code Playgroud)