龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

php 计算一年内周一到周五的间隔区间

时间:2015-04-04 11:37来源:网络整理 作者:网络 点击:
分享到:
计算一年内周一到周五的间隔区间 **index.php**[代码片段(52行)]

index.php

<?php
//年
$year = date("Y");
$beninTime = mktime(0,0,0,1,1,$year);
$endTime = mktime(0,0,0,1,1,$year+1)-1;
$weekArray  = array();
$isBegin = true;
$forTime = 0;
for ($time=$beninTime;$time<=$endTime;){
    $forTime++;
    $start = $end = 0;
    if($isBegin){
        //$nIndex==1表示星期一,$nIndex==7表示星期日
        $nIndex = date("N",$time);
        //$mulNum=1表示过1天就是星期一,
        $mulNum = 0;
        switch ($nIndex){
            case 1: $mulNum =7; break;
            case 2: $mulNum =6; break;
            case 3: $mulNum =5; break;
            case 4: $mulNum =4; break;
            case 5: $mulNum =3; break;
            case 6: $mulNum =2; break;
            case 7: $mulNum =1; break;
        }
    }else{
        //周1
        $mulNum = 7;
    }
    if($mulNum>2){
        $start = $time;
        //周五时间
        $end = $time+($mulNum-2-1)*24*60*60;
        if($end>$endTime){
            $end = $endTime;
        }
        $weekArray[] = array(
            'start'=>$start,
            'end'=> $end,
        );
        if($end>=$endTime){
            break;
        }
    }
    $time += $mulNum*24*60*60;
    $isBegin = false;
}
echo $forTime.'<br/>';
foreach ($weekArray as $week){
    echo date("Y-m-d",$week['start'])."星期".date("N",$week['start']).">>>>>>".date("Y-m-d",$week['end'])."星期".date("N",$week['end']).'<br/>';
}
?>
精彩图集

赞助商链接