如何在PHP中根据数值为表格Balance单元格设置红黄绿背景色
解决方案
直接修改展示balance_1和balance_2的<td>标签,通过PHP条件判断为单元格添加对应背景色,同时移除多余的空单元格,代码如下:
<td><b><?php echo $row ['part_number'] ?></b></td> <td><b><?php echo date("M d, Y | h:i:s a",strtotime($row['datet'])) ?></b></td> <td><?php echo $row ['description'] ?></td> <td><b><?php echo $row ['max_1'] ?></b></td> <td><b><?php echo $row ['min_1'] ?></b></td> <td><b><?php echo $row ['stock_1'] ?></b></td> <!-- 修改balance_1所在的td,添加背景色判断 --> <td style='background-color: <?php $bal1 = $row['balance_1']; echo $bal1 <= 0 ? '#FF0000' : ($bal1 <=5 ? '#FFFF00' : '#00FF00'); ?>'><b><?php echo $bal1 ?></b></td> <td><b><?php echo $row ['max_2'] ?></b></td> <td><b><?php echo $row ['min_2'] ?></b></td> <td><b><?php echo $row ['stock_2'] ?></b></td> <!-- 修改balance_2所在的td,添加背景色判断 --> <td style='background-color: <?php $bal2 = $row['balance_2']; echo $bal2 <= 0 ? '#FF0000' : ($bal2 <=5 ? '#FFFF00' : '#00FF00'); ?>'><b><?php echo $bal2 ?></b></td>
实现说明
- 将
balance_1和balance_2的值赋值给变量,避免重复调用数组,提升代码可读性 - 通过嵌套三元运算符实现三色判断逻辑:
- 数值≤0时,背景色设为红色(
#FF0000) - 1≤数值≤5时,背景色设为黄色(
#FFFF00) - 数值>5时,背景色设为绿色(
#00FF00)
- 数值≤0时,背景色设为红色(
- 直接在展示Balance数据的单元格上应用样式,完全满足不添加额外单元格的要求
内容的提问来源于stack exchange,提问作者user20122939
相关产品推荐
相关产品推荐

