php - 在给定日期时获取工作周的第一天和最后一天
问题描述
当我给出一个日期时,我试图得到一周的第一天(星期一)和工作周的最后一天(星期五)。通常给出的日期是星期一的日期,但也有例外。
给出的日期例如是 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 或其他东西。它以给出日期的字符串开头。
解决方案
你可以使用碳来实现这一点,
$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
如果你不知道 Carbon,这里有帮助你的文档。
推荐阅读
- javascript - 推送数组中的值以匹配特定格式
- python - 将数据框列表附加到python中的数据框列表
- excel - 将所有列值与 Excel 中的单个单元格进行比较
- r - R中的简单绘图
- python - Python pytz:显示时区的实际时间
- ios - 检测对 UITableViewCell 内的 UIViewCollectionCell 的点击
- api - 如何在具有不同查询参数的多个匹配 URL 上获取特定存根
- java - C#中3DES加密的java等价物是什么
- java - 从文件中解码“编译的 Java 类数据,版本 52.0”文本
- python - Pandas DataFrame,列中的列