index.php主文件 (60行)
<style>
*{text-align:center;font-size:3vw;}
a{text-decoration:none;}
.title { background-color:#006AA8;color:white; }
.table {margin:0 auto;width:99%;text-align:center;font-size:3.5vw;border-left:1px solid #a2c6d3;border-top:2px solid #a2c6d3;}
.table td, .table th{padding:12px;border-bottom:1px solid #a2c6d3;border-right:1px solid #a2c6d3;}
</style>
<?php
$filex = "./data.zhiban.php"; //设置数据文件路径
$year = empty($_GET['y']) ? date("Y") : intval($_GET['y']);
$mons = empty($_GET['m']) ? date("m") : intval($_GET['m']);
$dayx = empty($_GET['d']) ? date("d") : intval($_GET['d']);
$mons = substr("0".$mons,-2); //+0
$dayx = substr("0".$dayx,-2); //+0
$nymd = "$year-$mons-$dayx";
function readcsv($filex){
$handle = fopen($filex, "r");
while ($data = fgetcsv($handle,0,"\t")) { yield $data; }
fclose($handle);
}
echo "<table class='table' cellspacing='0'>\r\n";
echo "<caption>$nymd 值班信息</caption>"; $k=0;
foreach (readcsv($filex) as $key => $kar){
if($key=="1"){
$ti = $kar; unset($kar[0]); $lie=count($kar);
echo "<tr class='title'><td>".join("</td><td>",$kar)."</td></tr>";
}
if($kar[0]."@"==$nymd."@"){
$k++; unset($kar[0]); echo "<tr><td>".join("</td><td>",$kar)."</td></tr>";
}
}
if("$k@"=="0@") echo "<tr><td colspan='{$lie}'>该日($nymd)无值班信息</td></tr>";
echo "</table><br>\r\n";
$days = date("t",mktime(0,0,0,$mons,'1',$year));//获取对应该月的天数
$xiqi = date("w",mktime(0,0,0,$mons,'1',$year));//获取该月的星期几
$week = array("周日","周一","周二","周三","周四","周五","周六");
$prey = $xiay = $year; $prem = $xiam = $mons;
if($prem <= 1){ $prem = 12; $prey--;}else{ $prem--;} //上一月
if($xiam >= 12){ $xiam = 1; $xiay++;}else{ $xiam++;} //下一月
$syy = "<a href='?y={$prey}&m={$prem}'>上月</a>";
$xyy = "<a href='?y={$xiay}&m={$xiam}'>下月</a>";
echo "<table class='table' cellspacing='0'>\r\n";
echo "<tr><th>$syy</th><th colspan='5'>{$year}年{$mons}月</th><th>$xyy</th></tr>\r\n";
echo "<tr class='title'>";
for($i=0;$i<=6;$i++){ echo "<th>{$week[$i]}</th>\r\n";}
echo "</tr>\r\n";
$eda = 1;
while($eda <= $days){
echo "\r\n<tr>\r\n";
for($i=0;$i<=6;$i++){
if($eda <= $days && ($xiqi <= $i || $eda != 1) ){
$ddd = "<a href='?y={$year}&m={$mons}&d={$eda}'>$eda</a>";
echo "<td>$ddd</td>\r\n"; $eda++;
}else{
echo "<td> </td>\r\n";
}
}
echo "</tr>\r\n";
}
echo "</table>";
数据参考:data.zhiban.php
<?php exit();?>
值班日期 值班领导 值班成员
2022-09-19 李一 李叁一 李贰一 李壹一
2022-09-20 李一 李叁一 李贰一 李壹一
2022-09-21 李二 李叁二 李贰二 李壹二
2022-09-22 李三 李叁三 李贰三 李壹三
2022-09-23 李四 李叁四 李贰四 李壹四
2022-09-24 李五 李叁五 李贰五 李壹五
2022-09-25 李六 李叁六 李贰六 李壹六
2022-09-26 李七 李叁七 李贰七 李壹七
2022-09-27 李八 李叁八 李贰八 李壹八
2022-09-28 李九 李叁九 李贰九 李壹九
2022-09-29 李一零 李叁一零 李贰一零 李壹一零
2022-09-30 王一 王叁一 王贰一 王壹一
2022-10-01 王二 王叁二 王贰二 王壹二
2022-10-02 王三 王叁三 王贰三 王壹三
2022-10-03 王四 王叁四 王贰四 王壹四
2022-10-04 王五 王叁五 王贰五 王壹五
2022-10-05 王六 王叁六 王贰六 王壹六
2022-10-06 王七 王叁七 王贰七 王壹七
2022-10-07 王八 王叁八 王贰八 王壹八
2022-10-08 王九 王叁九 王贰九 王壹九
2022-10-09 王一零 王叁一零 王贰一零 王壹一零
2022-10-10 张一 张叁一 张贰一 张壹一
2022-10-11 张二 张叁二 张贰二 张壹二
2022-10-12 张三 张叁三 张贰三 张壹三
2022-10-13 张四 张叁四 张贰四 张壹四
2022-10-14 张五 张叁五 张贰五 张壹五
2022-10-15 张六 张叁六 张贰六 张壹六
2022-10-16 张七 张叁七 张贰七 张壹七
2022-10-17 张八 张叁八 张贰八 张壹八
2022-10-18 张九 张叁九 张贰九 张壹九
2022-10-19 张一零 张叁一零 张贰一零 张壹一零
2022-10-20 刘一 刘叁一 刘贰一 刘壹一
2022-10-21 刘二 刘叁二 刘贰二 刘壹二
2022-10-22 刘三 刘叁三 刘贰三 刘壹三
2022-10-23 刘四 刘叁四 刘贰四 刘壹四
2022-10-24 刘五 刘叁五 刘贰五 刘壹五
2022-10-25 刘六 刘叁六 刘贰六 刘壹六
2022-10-26 刘七 刘叁七 刘贰七 刘壹七
2022-10-27 刘八 刘叁八 刘贰八 刘壹八
2022-10-28 刘九 刘叁九 刘贰九 刘壹九
2022-10-29 刘一零 刘叁一零 刘贰一零 刘壹一零
2022-10-30 陈一 陈叁一 陈贰一 陈壹一
2022-10-31 陈二 陈叁二 陈贰二 陈壹二
2022-11-01 陈三 陈叁三 陈贰三 陈壹三
2022-11-02 陈四 陈叁四 陈贰四 陈壹四
2022-11-03 陈五 陈叁五 陈贰五 陈壹五
2022-11-04 陈六 陈叁六 陈贰六 陈壹六
2022-11-05 陈七 陈叁七 陈贰七 陈壹七
2022-11-06 陈八 陈叁八 陈贰八 陈壹八
2022-11-07 陈九 陈叁九 陈贰九 陈壹九
2022-11-08 陈一零 陈叁一零 陈贰一零 陈壹一零
2022-11-09 杨一 杨叁一 杨贰一 杨壹一
2022-11-10 杨二 杨叁二 杨贰二 杨壹二
2022-11-11 杨三 杨叁三 杨贰三 杨壹三
推荐PHP5.6 - 7.3 ;
PHP 5.5+; 推荐宝塔 护卫神及主流虚拟主机部署
数据:第一行是代码防止下载;第二行是各列字段(列标题)
数据:第一列是日期年-月-日;严格参考格式:2021-08-08
数据:编码UTF-8 无合并单元格,复制自Excel
数据参考:复制data.zhiban.php 文本内容(第二行开始)到Excel查看