• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        計算工作日(jessie看)

        計算工作日(jessie看)

        更新時間:2019-05-30 文章作者:未知 信息來源:網絡 閱讀次數:

        現在還有問題
        周一,周二不能做節假日
        可能算法上還有問題,等待你的更新...
        /**
        * sports98
        * flyruns@hotmail.com (歡迎交流)
        */
        ================
        <html>
        <head>
        <title>計算工作日(計算一年內)</title>
        </head>
        <style type="text/css">
        body,td {font-size:12px}
        </style>
        <body>
        <form action="<?=$_SERVER[PHP_SELF]?>" method="post" name="form1">
        <table cellpadding=0 cellspacing=0 border=0>
        <tr><td colspan=2 height=30 align=center>工作日計算器(計算一年內)
        <tr><td>開始日期:<td><input type="text" name="starttime" value="<?=date("Y")?>-01-01">
        <tr><td>結束日期:<td><input type="text" name="endtime" value="<?=date("Y-m-d")?>">
        <tr><td>周休息數:<td><input type="text" size=1 name="rest" value="2">天 始休日:
        <select name="restday">
        <option value="1">星期一</option>
        <option value="2">星期二</option>
        <option value="3">星期三</option>
        <option value="4">星期四</option>
        <option value="5">星期五</option>
        <option value="6" selected>星期六</option>
        <option value="7">星期七</option>
        </select>
        <tr><td valign=top>法定假期:<td>
        <textarea name="ordainrest" rows=7>05-01&5
        10-01&5</textarea>(&進行分隔)
        <tr><td>缺席天數:<td><input type="text" size=1 name="absent" value="0">天(請假等未工作日)
        <tr><td>加班天數:<td><input type="text" size=1 name="overtime" value="0">天
        <tr><td>補假天數:<td><input type="text" size=1 name="supplytime" value="0">天
        <input type="submit" value="計算數據">

        </form>
        <?php
        if(is_array($_POST)){//有POST數據
        $starttime=date("z",mktime(0,0,0,substr($_POST[starttime],5,2),substr($_POST[starttime],8,2),substr($_POST[starttime],0,4)));
        $endtime=date("z",mktime(0,0,0,substr($_POST[endtime],5,2),substr($_POST[endtime],8,2),substr($_POST[endtime],0,4)));
        $alltime=$endtime-$starttime+1;
        echo "自開始日期到結束日期,共:".$alltime."天";
        echo "<br>缺席天數:".$_POST[absent]."天";
        echo "<br>加班日期:".$_POST[overtime]."天";
        echo "<br>補假日期:".$_POST[supplytime]."天";
        echo "<br>法定假期:<br>";
        $tmpa=explode("\n",$_POST[ordainrest]);
        for($Tmpb=0;$Tmpb<count($tmpa);$Tmpb++){
        $tmpc=explode("&",$tmpa[$Tmpb]);
        echo "".$tmpc[0]." 休息 ".$tmpc[1]." 天<br>";
        $tmpsize=date("z",mktime(0,0,0,substr($tmpc[0],0,2),substr($tmpc[0],3,2),date("Y")));//節假日的日期數據
        if($tmpsize>=$starttime && $tmpsize<=$endtime){
        $alltime=$alltime-$tmpc[1];//從總的工作日中去掉法定日期
        }
        }
        //調試點
        //echo "<h3>$starttime $endtime</h3>";

        $alltime-=$_POST[absent];//扣除缺席天數
        $alltime+=$_POST[overtime];//加上加班日期
        $alltime-=$_POST[supplytime];//去掉補充的假期

        //計算周休息日
        $fweek=date("w",mktime(0,0,0,substr($_POST[starttime],5,2),substr($_POST[starttime],8,2),substr($_POST[starttime],0,4)));//獲得開始日期的周數
        $eweek=date("w",mktime(0,0,0,substr($_POST[endtime],5,2),substr($_POST[endtime],8,2),substr($_POST[endtime],0,4)));//結束周數
        //這里要判斷一下開始的星期天數(要求獲得第一周的日期數)
        if($fweek<$_POST[restday]){//不是休息日(指定的工作休息日),在指定休息日前
        $ctmp=abs($_POST[restday]-$fweek);
        $runday=date("d",mktime(0,0,0,substr($_POST[starttime],5,2),$ctmp+substr($_POST[starttime],8,2),substr($_POST[starttime],0,4)));
        //獲得第一周的日期
        }else{//再指定休息日后(e.g. $fwwk=6 $_POST[restday]=2)
        $ctmp=abs($fweek-$_POST[restday]);
        $runday=date("d",mktime(0,0,0,substr($_POST[starttime],5,2),$ctmp+substr($_POST[starttime],8,2),substr($_POST[starttime],0,4)));
        }
        //調試點
        //echo "<h3>$runday $ctmp $_POST[restday] $fweek</h3>";
        for($ttmpa=0;;$ttmpa++){
        //將當前的節假日向后推7日,進行判斷最終$ttmpa為節假日數
        $cday=date("z",mktime(0,0,0,substr($_POST[starttime],5,2),$runday+7*$ttmpa,substr($_POST[starttime],0,4)));
        if($cday>$endtime){
        break;
        }
        }
        echo "<br>開始日期:".date("Y-m-d 星期w",mktime(0,0,0,substr($_POST[starttime],5,2),substr($_POST[starttime],8,2),substr($_POST[starttime],0,4)));;
        echo "<br>結束日期:".date("Y-m-d 星期w",mktime(0,0,0,substr($_POST[endtime],5,2),substr($_POST[endtime],8,2),substr($_POST[endtime],0,4)));;
        echo "<br>共計周末休息:".$ttmpa."×".$_POST[rest]."=".$ttmpa*$_POST[rest]."天<span onclick=\"if(document.all['allweek'].style.display==''){this.innerHTML='(+)';document.all['allweek'].style.display='none';}else{this.innerHTML='(-)';document.all['allweek'].style.display='';}\" style=\"cursor:hand\">(+)</span>";
        echo "<div id=\"allweek\" style=\"display:'none'\">";
        for($TTmpa=0;$TTmpa<$ttmpa;$TTmpa++){
        $dday=date("Y-m-d 星期w",mktime(0,0,0,substr($_POST[starttime],5,2),$runday+7*$TTmpa,substr($_POST[starttime],0,4)));
        echo "$dday<br>";
        }
        echo "</div>";
        if($fweek==6){//周六
        }else if($fweek==0){//周日,則總休息日僅僅去一天休息日
        $alltime+=1;//增加一天
        }
        $allcday=$ttmpa*$_POST[rest];//總的工作休息日
        $alltime-=$allcday;
        echo "<hr size=1>有效的工作日:<font color=red>$alltime</font>";
        }
        ?>
        </body>
        </html>

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: jizz中国免费| 久久不见久久见免费影院| 毛片在线全部免费观看| 国产精品成人免费一区二区| 久久综合亚洲色HEZYO社区| 国产亚洲精品美女久久久久久下载| 97超高清在线观看免费视频| 一二三四在线播放免费观看中文版视频| 亚洲精品综合久久| wwwxxx亚洲| 99热这里只有精品免费播放| 亚洲国产日韩在线观频| 九九免费久久这里有精品23| 成年女人午夜毛片免费视频| 老司机亚洲精品影院无码| 日韩精品无码免费视频| 曰批全过程免费视频在线观看| 日韩亚洲国产高清免费视频| 59pao成国产成视频永久免费| 亚洲毛片av日韩av无码| 西西人体免费视频| 亚洲国产综合专区在线电影| 成人精品视频99在线观看免费| 国产伦一区二区三区免费| 亚洲精品天堂在线观看| 日韩视频免费一区二区三区| 亚洲人成777在线播放| 最近2019年免费中文字幕高清| 亚洲AV无码久久精品成人| 久久国产福利免费| 亚洲欧洲自拍拍偷精品 美利坚| a级毛片在线免费| 四虎亚洲精品高清在线观看| 人人狠狠综合久久亚洲高清| 亚洲AV成人片无码网站| 午夜成人免费视频| 亚洲AV无码乱码在线观看裸奔| 免费v片在线观看视频网站| 亚洲成人福利网站| 欧洲一级毛片免费| 九九免费精品视频在这里|