получить дату понедельника недели с указанием года и номера недели в году - PullRequest
0 голосов
/ 06 февраля 2020

Как я могу получить дату дня понедельник недели с указанием года и номера недели в году?

Например, если год - 2020, а номер недели в году - 01, ожидаемый результат - 2019-12-30

Ответы [ 2 ]

3 голосов
/ 06 февраля 2020

Надеюсь, это то, что вы ищете :)

<?php

$week_number = '06';
$year_number = '2020';

function getStartAndEndDate($week, $year) {
  $date = new DateTime();
  $date->setISODate($year, $week);
  for ($i=0; $i < 7; $i++) {
    $array[$i] = $date->format('Y-m-d');
    $date->modify('+1 days');
  }
  return $array;
}

$week_array = getStartAndEndDate($week_number,$year_number);

echo $week_array[0]; // 0 = monday, 1 = tuesday, and so on :)

?>
0 голосов
/ 06 февраля 2020
<?php
$week = 1;
$year = 2020;

$dateTime = date_create(sprintf("%04dW%02d",$year,$week)); //always a monday

echo $dateTime->format('Y-m-d');  //2019-12-30
...