我有一组记录,每个记录都有一个日期时间(2015-01-01 00:00:00)。我希望能够将此数组拆分为介于paydates之间的记录。
我将使用的示例付费日期是第25个,例如一个月的开始将是"在该月25日或之前的最后一个工作日" - 意味着如果一个月的25号是一个周末,我们会想要那个从上一个工作日开始的月份(意思是星期五)。
最终,我希望能够对记录进行排序:
2015年7月 [6月25日 - 7月23日]
2015年8月 [7月24日 - 8月24日]
到目前为止,我已经构建了这个数组(使用Medoo框架来处理记录):
$paydate = '25th';
// Testing July Dates
$monthNum = 6;
$monthName = date('F', mktime(0, 0, 0, $monthNum, 10));
$nextMonthName = date('F', mktime(0, 0, 0, $monthNum+1, 10));
$dates = array(
array(...),
array(
"name" => "July",
"start" => date('Y-m-d 00:00:00', strtotime('last weekday ' . $paydate . $monthName . ' 2015')),
"end" => date('Y-m-d H:i:s', strtotime('last weekday ' . $paydate . $nextMonthName . ' 2015') - 1),
),
array(...),
);
其次是:
foreach ($dates as $date) {
// get this month's records
$thismonthsrecords = $database->select('records',
[...],
[...],
[
'datetime[<>]' => [$date['start'], $date['end']]
]
);
目前的问题: