PHP中如何实现5点到10点之间给变量赋值为空?代码报错排查
代码问题分析与修复
存在的问题
- 逻辑条件错误:当前判断
date('H')=='05' && date('H')<'10'要求小时同时等于05、且小于10,仅能匹配凌晨5点这一个小时的区间,完全覆盖不到6点到9点的时段,和你预期的5点到10点的判断逻辑不符。 - 字符串比较存在隐患:
date('H')返回的是两位字符串格式的小时值,直接做大小比较依赖PHP的隐式类型转换,极端场景下可能出现不符合预期的判断结果,更推荐转成整型后做数值比较。
修复后的代码示例
// 先将小时转为整型,避免字符串比较风险 $currentHour = (int)date('H'); // 判断5点(含)到10点(不含)的区间 if ($currentHour >= 5 && $currentHour < 10) { $san = ""; }
内容的提问来源于stack exchange,提问作者Vaibhav
相关产品推荐
相关产品推荐

