php - 开关盒不适用于负检查
问题描述
我不知道为什么我的 switch case 没有执行
$t1 = $nextFeed;
$t2 = date("m/d/Y h:i:s a", time());
$timeLeftTowardNextFeed = strtotime($t1) - strtotime($t2);
$timeLeftTowardNextFeed = $timeLeftTowardNextFeed / ( 60 * 60 );
dd($timeLeftTowardNextFeed); // -6.0533333333333
switch (true) {
case $timeLeftTowardNextFeed > 1:
$timleftColor = '#00ff5c';
break;
case $timeLeftTowardNextFeed < 1:
$timleftColor = '#ffc51b';
break;
case $timeLeftTowardNextFeed < 0:
$timleftColor = '#c12222'; <<-------------------------------------------------- should executed
break;
default:
$timleftColor = 'white';
break;
}
// -6.0533333333333
if($timeLeftTowardNextFeed < 0){
dd("HERE"); // It ran
}
所以你可以看到..如果工作,但开关没有。
值为负
我错过了什么?
解决方案
缺少一个条件> 0 不满足第二种情况...
switch (true) {
case $timeLeftTowardNextFeed > 1:
$timleftColor = '#00ff5c';
break;
case $timeLeftTowardNextFeed < 1 && $timeLeftTowardNextFeed >=0:
$timleftColor = '#ffc51b';
break;
case $timeLeftTowardNextFeed < 0:
$timleftColor = '#c12222';
break;
default:
$timleftColor = 'white';
break;
}
推荐阅读
- python - 使用新数据更新 Pandas 数据框,同时保留现有 ID 号
- ios - 向 Swift 库添加对 SwiftPM 的支持
- spring-boot - UsernameNotFoundException 在尝试通过 POSTMAN 发送 POST 请求来尝试用户登录的工作方式时捕获
- python - 从需要在下载前勾选的网站下载文件的推荐方法和 python 库是什么?
- javascript - JavaScript 如何使用公共 API 和纯 JavaScript 更改输入值
- python - 如何从字典中获取唯一字符串
- node.js - 获取 npm 安装错误
- hive - 在导入配置单元之前如何知道大 csv 文件的架构
- c++ - std::string 中的隐藏字符?string.length() 返回超出预期
- javascript - 为什么下一个函数不执行?