碳:了解一年中一年中的一周的开始和结束日期

Fra*_*ost 5 php date php-carbon

Carbon提供函数weekOfYear以将一年中的星期作为整数.但是,我需要反过来根据年份+一周的时间来获取日期.

Carbon::now()->weekOfYear(); // todays week of the year
Run Code Online (Sandbox Code Playgroud)

例如

  • 年:2016年
  • 一年中的一周:42

因此,我需要这周的开始和结束日期.但是我在Carbon文档中找不到合适的函数

ayn*_*ber 14

Carbon是PHP的DateTime的包装器,因此您可以使用setISODate:

$date = Carbon::now(); // or $date = new Carbon();
$date->setISODate(2016,42); // 2016-10-17 23:59:59.000000
echo $date->startOfWeek(); // 2016-10-17 00:00:00.000000
echo $date->endOfWeek(); // 2016-10-23 23:59:59.000000
Run Code Online (Sandbox Code Playgroud)

  • 如果您收到与startOfWeek相同的日期对象,请使用$ date-> copy()-> startOfWeek()和$ date-> copy()-> endOfWeek()。 (2认同)
  • @FaizanAkramDar OP 要求查找从年份和周数开始的信息,而不是实际日期。对于 2021 年 1 月 1 日,这将是 [2020 - 53](https://www.epochconverter.com/weeks/2021) (2认同)