Php 从给定日期开始获取月份的第一个星期一时间不保留时间组件 我在尝试什么

Php 从给定日期开始获取月份的第一个星期一时间不保留时间组件 我在尝试什么,php,datetime,Php,Datetime,参考: 我正试图根据给定的日期和时间获取本月的第一个星期一 EG:考虑日期时间>代码> 2013-08~02 00;2013-09-05 00:00。那么结果将是2013-08-05 00:00;2013-09-02 00:00 我能做到这一点,但它没有保留时间成分 我需要什么 在上面的示例中:如果两个日期时间包含时间值,则表示2013-08-02 10:00;2013-09-05 10:00。那么输出应该是2013-08-05 10:00;2013-09-02 10:00。但是我得到了201

参考:

我正试图根据给定的日期和时间获取本月的第一个星期一

EG:考虑日期时间>代码> 2013-08~02 00;2013-09-05 00:00。那么结果将是

2013-08-05 00:00;2013-09-02 00:00

我能做到这一点,但它没有保留时间成分

我需要什么 在上面的示例中:如果两个日期时间包含时间值,则表示
2013-08-02 10:00;2013-09-05 10:00
。那么输出应该是
2013-08-05 10:00;2013-09-02 10:00
。但是我得到了
2013-08-05 00:00;2013-09-02 00:00
来自我的代码。我能做些什么来解决这个问题

代码
如果要将时间保留在10:00,请尝试:

$test = new DateTime('2013-08-02 10:00');
echo $test->modify('first monday ' . $test->format('H:i'))->format('Y-m-d H:i');

仅返回2013年8月5日。另外,如果我使用Datetime类进行修复,效果会更好。这个日期是2013年8月的星期一。请尝试我的代码,它也会给出相同的结果。但这不是关于星期一,而是关于时间部分。你是说你想保留时间部分吗?是的,这就是我的要求。
Try this:
echo strftime("%d/%m/%Y", strtotime("first Monday of Aug 2013"));
$test = new DateTime('2013-08-02 10:00');
echo $test->modify('first monday ' . $test->format('H:i'))->format('Y-m-d H:i');