用php循环星期一到星期日,php函数获取日期范围内的所有星期一

我创建了一个类,你得到所有天在范围日期按天分组的名称:

class DayHelper{

const MONDAY = 'Mon';

const TUESDAY = 'Tue';

const WEDENSDAY = 'Wed';

const THURSDAY = 'Thu';

const FRIDAY = 'Fri';

const SATURDAY = 'Sat';

const SUNDAY = 'Sun';

public function GetYeardays($dateStart, $dateend){

$period = new \DatePeriod(

new \DateTime($dateStart), new \DateInterval('P1D'), (new \DateTime($dateend))

);

$dates = iterator_to_array($period);

$arrayreturn = array();

foreach ($dates as $val) {

$date = $val->format('Y-m-d'); //format date

$get_name = date('l', strtotime($date)); //get week day

$day_name = substr($get_name, 0, 3); // Trim day name to 3 chars

switch ($day_name) {

case self::MONDAY:

$MONDAY[] = $date;

$arrayreturn[self::MONDAY] = $MONDAY;

break;

case self::TUESDAY:

$TUESDAY[] = $date;

$arrayreturn[self::TUESDAY] = $TUESDAY;

break;

case self::WEDENSDAY:

$WEDENSDAY[] = $date;

$arrayreturn[self::WEDENSDAY] = $WEDENSDAY;

break;

case self::THURSDAY:

$THURSDAY[] = $date;

$arrayreturn[self::THURSDAY] = $THURSDAY;

break;

case self::FRIDAY:

$FRIDAY[] = $date;

$arrayreturn[self::FRIDAY] = $FRIDAY;

break;

case self::SATURDAY:

$SATURDAY[] = $date;

$arrayreturn[self::SATURDAY] = $SATURDAY;

break;

case self::SUNDAY:

$SUNDAY[] = $date;

$arrayreturn[self::SUNDAY] = $SUNDAY;

break;

}

}

return $arrayreturn;

}

}

输出会是这样

array (size=7)

'Fri' =>

array (size=5)

0 => string '2016/01/01' (length=10)

1 => string '2016/01/08' (length=10)

2 => string '2016/01/15' (length=10)

3 => string '2016/01/22' (length=10)

4 => string '2016/01/29' (length=10)

'Sat' =>

array (size=5)

0 => string '2016/01/02' (length=10)

1 => string '2016/01/09' (length=10)

2 => string '2016/01/16' (length=10)

3 => string '2016/01/23' (length=10)

4 => string '2016/01/30' (length=10)

'Sun' =>

array (size=4)

0 => string '2016/01/03' (length=10)

1 => string '2016/01/10' (length=10)

2 => string '2016/01/17' (length=10)

3 => string '2016/01/24' (length=10)

'Mon' =>

array (size=4)

0 => string '2016/01/04' (length=10)

1 => string '2016/01/11' (length=10)

2 => string '2016/01/18' (length=10)

3 => string '2016/01/25' (length=10)

'Tue' =>

array (size=4)

0 => string '2016/01/05' (length=10)

1 => string '2016/01/12' (length=10)

2 => string '2016/01/19' (length=10)

3 => string '2016/01/26' (length=10)

'Wed' =>

array (size=4)

0 => string '2016/01/06' (length=10)

1 => string '2016/01/13' (length=10)

2 => string '2016/01/20' (length=10)

3 => string '2016/01/27' (length=10)

'Thu' =>

array (size=4)

0 => string '2016/01/07' (length=10)

1 => string '2016/01/14' (length=10)

2 => string '2016/01/21' (length=10)

3 => string '2016/01/28' (length=10)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值