我有一個開始日期和結束日期。
我試圖讓所有的週二和每兩個星期的星期三。PHP:DateInterval在X天每兩個星期
實施例:
2017年5月23日(TU)
2017年5月24日(我們)2017年6月6日(TU)
2017-06- 07(我們)
...
我試圖在PHP做:個
$start = new FrozenTime('2017-05-23'); // Date is in this format 'cause I'll save into DB
$endOfYear = $start->endOfYear();
$perWeek = new \DateInterval('P14D'); // I want every 2 weeks
$periodPerWeek = new \DatePeriod($start, $perWeek, $endOfYear);
$days = ['2', '3']; // Tuesday and Wednesday
foreach ($periodPerWeek as $value) {
if (in_array($value->format('N'), $days)) {
$test[] = [
'start' => $value
];
}
}
結果:
"start": "2017-05-23",
"start": "2017-06-06",
"start": "2017-06-20",
它變得只有一個陣列的日期。我也需要得到星期三的!我該怎麼做?
重要提示:
開始日期不會總是星期二。用戶可以選擇他想要的星期幾。
例如: 用戶可以在每兩週選擇每個SU,WE和FR。
// start date example: 2017-05-20 (saturday)
// output should be like:
2017-05-22 (SU)
2017-05-24 (WE)
2017-05-26 (FR)
2017-06-05 (SU)
2017-06-07 (WE)
2017-06-09 (FR)
...
你的意思是週二和週三或週三和週四? – fubar
你的週三和週四都回至前:) –
@fubar更新的問題! – Victor