计算一段日期内的周末天数的php代码(星期六,星期日总和)
http://www.jb51.net/article/20886.htm
加入$is_workday 参数,可以选择是否返回工作日,默认是返回休息日
加入$is_workday 参数,可以选择是否返回工作日,默认是返回休息日
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Php代码 function get_weekend_days($start_date,$end_date,$is_workday = false){ if (strtotime($start_date) > strtotime($end_date)) list($start_date, $end_date) = array($end_date, $start_date); $start_reduce = $end_add = 0; $start_N = date('N',strtotime($start_date)); $start_reduce = ($start_N == 7) ? 1 : 0; $end_N = date('N',strtotime($end_date)); in_array($end_N,array(6,7)) && $end_add = ($end_N == 7) ? 2 : 1; $alldays = abs(strtotime($end_date) - strtotime($start_date))/86400 + 1; $weekend_days = floor(($alldays + $start_N - 1 - $end_N) / 7) * 2 - $start_reduce + $end_add; if ($is_workday){ $workday_days = $alldays - $weekend_days; return $workday_days; } return $weekend_days; } |
