php 求正班工作日的小算法2

function getWorkDays($year,$month,$bigword=true)
{
        $tmp = 7;
        if($bigword)
        {
                $tmp = 6;
        }
        $workday=0;
        $t=mktime(0,0,0,$month,1,$year);
        $days=date('t',$t);
        for($i=1;$i<=$days ;$i++)
        {       
                $t=mktime(0,0,0,$month,$i,$year);
                $dayWeek=date('N',$t);
                if($dayWeek < $tmp)
                {
                        $workday++;
                }
        }               
        return $workday;

}


此算法支持6天制与5天制两种,但是不支持大小周,配合节假日安排,可以算出真实应到班天数。

你可能感兴趣的:(技術,php,算法)