php 一个月多少天,php计算一月中有多少个周末

55e9c5b92d4893cb665d434dad3b1c3f.png

慕田峪9158850

试试这个修改过的

function get_weekend_days($start_date, $end_date, $weekend_days=1) {

$data = array();

$start_reduce = $end_add = 0;

$start_N = date('N',strtotime($start_date));

$end_N = date('N',strtotime($end_date));

// 进行单、双休判断,默认按单休计算

$weekend_days = intval($weekend_days);

switch ($weekend_days)

{

case 2:

in_array($end_N,array(6,7)) && $end_add = ($end_N == 7) ? 2 : 1;

$start_reduce = ($start_N == 7) ? 1 : 0;

break;

case 1:

default:

$end_add = ($end_N == 7) ? 1 : 0;

break;

}

$days = ((strtotime($end_date) - strtotime($start_date))/86400) + 1;

$data['total_days'] = $days;

$data['total_relax'] = floor(($days + $start_N - 1 - $end_N) / 7) * $weekend_days - $start_reduce + $end_add;

return $data;

}

echo "Two days per week\n";

var_dump( get_weekend_days("2018-03-31","2018-04-08",2));

var_dump( get_weekend_days("2018-04-01","2018-04-08",2));

var_dump( get_weekend_days("2018-04-02","2018-04-08",2));

var_dump( get_weekend_days("2018-04-07","2018-04-08",2));

var_dump( get_weekend_days("2018-04-08","2018-04-08",2));

echo "One day per week\n";

var_dump( get_weekend_days("2018-03-31","2018-04-08",1));

var_dump( get_weekend_days("2018-04-01","2018-04-08",1));

var_dump( get_weekend_days("2018-04-02","2018-04-08",1));

var_dump( get_weekend_days("2018-04-07","2018-04-08",1));

var_dump( get_weekend_days("2018-04-08","2018-04-08",1));

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值