1. 程式人生 > >php獲取某一年的工作日列表

php獲取某一年的工作日列表

<?php
//節假日
$holidays =  [
    '20160101',
    '20160208',
    '20160209',
    '20160210',
    '20160211',
    '20160212',
    '20160304',
    '20160402',
    '20160403',
    '20160404',
    '20160430',
    '20160501',
    '20160502',
    '20160609',
    '20160610',
    '20160611',
    '20160915',
    '20160916',
    '20160917',
    '20161001',
    '20161002'
, '20161003', '20161004', '20161005', '20161006', '20161007' ]; //週末上班日 $weekendWorkDays = [ '20160206', '20160214', '20160612', '20160918', '20161008', '20161009' ]; function getWorkDays($year, $holidays, $weekendWorkDays) { $startDate = strtotime($year.'-01-01'); $endDate = strtotime('+1 Year'
, $startDate) - 86400; $workDays = []; for ($startDate; $startDate <=$endDate; $startDate += 86400) { $info = getdate($startDate); $date = date('Ymd', $startDate); if((in_array($info['weekday'],array('Sunday','Saturday')) || in_array($date,$holidays)) && !in_array($date
, $weekendWorkDays)){ continue; } $workDays[] = (int)$date; } return $workDays; } $workDays = getWorkDays(2016, $holidays, $weekendWorkDays);