我需要在一段时间内获得某些工作日。
平日只能是一个或多个矿石,例如仅所有星期一或所有星期一,星期二和星期三。
我想与DatePeriod一起使用DateInterval::createFromDateString
DateInterval::createFromDateString正在接受Relative Formats。
如何将一个或多个工作日作为相对格式传递到DateInterval::createFromDateString中。这有可能吗?
在相对格式中,我找不到可以使之可行的“所有”格式
$i = DateInterval::createFromDateString('every Monday');
最佳答案
感谢所有评论和答案,我现在知道我无法将“每周一”之类的相对格式传递给DateInterval::createFromDateString。
但是这样的事情适用于我的情况:
$start = new DateTime('2014-11-01');
$end = new DateTime('2014-12-01');
$interval = new DateInterval('P1D');
$period = new DatePeriod($start, $interval, $end);
$mydays = array('1', '3', '5');
foreach($period as $date) {
if(in_array($date->format('N'), $mydays)) {
//do something for Monday, Wednesday and Friday
}
}