获取给定日期的工作周的第一天和最后一天

时间:2019-05-08 11:53:03

标签: php date laravel-blade

我想获取日期时要获取工作日的第一天(星期一)和工作周的最后一天(星期五)。通常,给出的日期是星期一的日期,但也有例外。

给出的日期例如是2019-04-18。 工作周的最后一天是2019-4-19,第一天是2019-4-15。 我在laravel中工作,想在刀片模板中使用它,因此,如果可能的话,我希望用一行代码来完成它。

我能够获得工作周的最后一天,但第一天仍然遇到麻烦。我也不确定最后一天的方式是最好的。

{{ date("d-m-Y", strtotime(date('Y-m-d', strtotime(($overtime->workdate). ' + '.(5-date('w', strtotime($overtime->workdate))).' days')))) }}

给出的答案的问题是,我试图将所有这些都放在刀片模板的一行中,所以我无法创建新的DateTime或其他东西。它以给出日期的字符串开头。

1 个答案:

答案 0 :(得分:2)

您可以使用碳来实现这一目标,

$date = new Carbon('2019-04-18'); // 

// To get the first week of the day we can do this
echo $date->startOfWeek(); // 2019-04-15
echo $date->endOfWeek(); // 2019-04-19

如果您不了解碳,这里是doc来帮助您的。