You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP按日期时间限制考勤提交时日期判断失效问题求助

问题原因

  • 逻辑运算优先级错误:PHP中&&优先级高于||,原代码的运算顺序和预期完全不符,导致条件判断逻辑混乱
  • 日期判断逻辑本身存在致命错误:date('N') !=3 || date('N') !=5 这个条件永远为真,任意一天都会满足“不等于3 或者 不等于5”的要求,相当于日期判断完全失效
  • 周几的取值对应错误:date('N')返回值中2对应周二、4对应周四,原代码写的3、5对应周三、周五,和你的需求不匹配
  • 时间范围判断不全:原代码仅限制了小时范围,没覆盖12:00-12:15的有效时段

修正后代码

// 提前获取时间参数,避免多次调用date出现时间不一致问题
$hour = (int)date('G');
$minute = (int)date('i');
$weekDay = (int)date('N');

// 判定是否属于允许提交的时段:周二/周四 11:00~12:15
$allowSubmit = (
    ($weekDay === 2 || $weekDay === 4)
    && (
        $hour === 11
        || ($hour === 12 && $minute <= 15)
    )
);

// 不在允许时段直接跳转
if (!$allowSubmit) {
    header ('Location: /noattend.php');
    exit();
}

内容的提问来源于stack exchange,提问作者Kubes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 12:06:02