내가 찾은 수정 된 기능을 사용하고 있지만 여전히 수정해야 할 것이 있습니다.
public static function getStartAndEndDate($week, $year) {
$dto = new DateTime();
$dto->setISODate($year, $week);
$ret = Array();
for($i = 0; $i<=9;$i++)
{
$ret[$i]['week_start'] = $dto->format('d/m/Y');
$dto->modify('+6 days');
$ret[$i]['week_end'] = $dto->format('d/m/Y');
}
return $ret;
}
사용
$week_array = class::getStartAndEndDate(date('W'),date('Y'));
echo '<pre>';print_r($week_array);exit;
나는 얻다 :
Array
(
[0] => Array
(
[week_start] => 10/02/2014
[week_end] => 16/02/2014
)
[1] => Array
(
[week_start] => 16/02/2014
[week_end] => 22/02/2014
)
[2] => Array
(
[week_start] => 22/02/2014
[week_end] => 28/02/2014
)
[3] => Array
(
[week_start] => 28/02/2014
[week_end] => 06/03/2014
)
[4] => Array
(
[week_start] => 06/03/2014
[week_end] => 12/03/2014
)
[5] => Array
(
[week_start] => 12/03/2014
[week_end] => 18/03/2014
)
[6] => Array
(
[week_start] => 18/03/2014
[week_end] => 24/03/2014
)
[7] => Array
(
[week_start] => 24/03/2014
[week_end] => 30/03/2014
)
[8] => Array
(
[week_start] => 30/03/2014
[week_end] => 05/04/2014
)
[9] => Array
(
[week_start] => 05/04/2014
[week_end] => 11/04/2014
)
)
이번 주 (여기는 월요일)에서 작동하며 2014 년 10 월 2 일-2014 년 2 월 16 일이지만 두 번째주는 2014 년 2 월 17 일-2014 년 2 월 23 일은 실제로 2014 년 2 월 16 일- 2014 년 2 월 22 일.
당신의 도움을 주셔서 감사합니다
다음 +1 day
과 같이 간단히 추가 할 수 있습니다 .
function getStartAndEndDate($week, $year) {
$dto = new DateTime();
$dto->setISODate($year, $week);
$ret = Array();
for($i = 0; $i<=9;$i++)
{
$ret[$i]['week_start'] = $dto->format('d/m/Y');
$dto->modify('+6 days');
$ret[$i]['week_end'] = $dto->format('d/m/Y');
$dto->modify('+1 day');
}
return $ret;
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다