从Date Now中的字符串php创建日期间隔

时间:2014-05-20 11:21:07

标签: php

我想从日期开始创建日期间隔,这是一个例子。

如果我的字符串代码为“今天”,那么算法会将日期(2014-05-20 12:00:00)设为现在,并在24小时内将此时间间隔[ '2014-05-20 12:00:00' , '2014-05-20 23:59:59']返回给我,

即:从一个字符串(今天,明天,本周)开始,它返回该标签的间隔时间,该时间取决于现在的日期。如果可能,请给我php功能。

我查看了createFromDateString()DatePeriod()

1 个答案:

答案 0 :(得分:1)

我相信这就是你想要的

function render_interval($str, $format = 'Y-m-d H:i:s')
{
    $now = (new DateTime('now'))->setTime(0, 0, 0)->format($format);
    $end = (new DateTime($str))->setTime(23, 59, 59)->format($format);

    return [$now, $end];
}

var_dump(render_interval('today'));
var_dump(render_interval('tomorrow'));
var_dump(render_interval('next week'));