日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

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

計算工作日(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>

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

本類教程下載

系統下載排行

主站蜘蛛池模板: 日本乱码伦 | 国产99在线 | 亚洲 | 欧美牲爱 | 日韩1234| 欧美午夜在线观看理论片 | 亚洲一区综合 | 国产成人欧美视频在线 | 男啪女视频免费观看网站 | 伊人.com| 91亚洲免费 | 国产精品久久人人做人人爽 | 日日操操干干 | 日本aaaa级毛片在线看 | 在线日本三级 | 伊人蕉久| 色综合天天综久久久噜噜噜久久〔 | 午夜免费观看 | 亚洲国产亚洲片在线观看播放 | 19s级做人爱c视频正版免费 | 亚洲婷婷综合色高清在线 | 视频一区二区欧美日韩在线 | 美国毛片一级e片黑人片 | 免费视频一区二区三区四区 | 欧美xxxxxbbbbb | 天天操天天摸天天曰天天干天天弄天天干 | 日韩免费高清视频网站 | 黄色干b | 天天插视频| 中文字幕在线免费看 | 国产成人精品亚洲日本在线观看 | 日韩欧美一区二区三区不卡视频 | www.五月天婷婷 | 黑人中文字幕在线精品视频站 | 思思99精品国产自在现线 | 二区在线播放 | 亚洲国产精品一区二区久 | 全国男人天堂网 | 日韩午夜片 | 欧美国产日韩1区俺去了 | 欧美一区二区视频在线观看 | 日本一级毛片无遮挡 |