-1

我有一个基于日期的要求,我需要显示特定日期范围内的员工人数,不应计算周日和政府假期。

------------------------------------------
|Staff name| less | Full | more | Absent |
------------------------------------------
| name 1   | 1    | 3    | 1    |  1     |
------------------------------------------
| name 2   | 2    | 2    | 2    | 0      |
------------------------------------------

这是我的要求:

  1. 周日不应该算在内
  2. 周六将有 4 小时的努力
  3. 工作日将有 8 小时的努力

但工作人员可以进入低于或高于固定值的位置。表中如果员工工作 7 小时将在少列中计入 +1,如果他工作超过 8 小时将在更多列中计入 +1,如果他工作正好 8 小时将在完整列中计入 +1 , 如果他在特定日期缺席 +1 将被计入缺席列。

周六:与上述相同,但 8 小时将被视为 4 小时。无论如何,星期天不应该被计算在内。

对于这个要求,我是否需要一个新的 MySQL 表,其中包含一年中的所有 365 天,其中星期日和政府假期处于活动状态?或者我们可以在没有桌子的情况下做到这一点?如果是这样怎么做,请解释一下。

提前致谢..

4

1 回答 1

0
$day_of_week = date("D");

这将向您显示一周中的当前日期,以便帮助您了解它是“星期六”还是“太阳”。

至于政府假期,您需要将它们存储在表格中。可能最简单的方法是设置日、月、年。然后你可以像这样找出当前日期:

$mon = date("m");
$day = date("d");
$year = date("Y");

只需使用这些变量来构建查询并确保当前日期不是假期:

$sql = "SELECT * FROM holidays WHERE day='".$day."' AND month='".$month."' AND year='".$year."'";
....execute query
于 2012-05-10T06:16:52.460 回答