我可以根据里面的值改变背景颜色吗?

时间:2012-12-20 11:11:34

标签: php html colors background

我有一个PHP索引页面,其中数组中的数据显示在图片顶部的<div>内。我希望<div>根据其中的内容更改颜色。

这个想法是这样的:

I have Customer   -    Date    -    Due in

我所说的数组有如下结构:

Array(
   [0] => array('customer' => 'John', 'date' => '2012-05-11', 'due' => 9),
   [1] => array('customer' => 'Hess', 'date' => '2011-12-11', 'due' => 5),
   [2] => array('customer' => 'Mrac', 'date' => '2012-06-18', 'due' => 3)
)

截止日期显示 - 如果其中的数字为5或更低,我希望<div>为红色。

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

在php代码中,如果“Due in”小于或等于5,则给div一个不同的类。 所以在PHP中,当你循环遍历数组时:

<?php 
  echo "<div";
  if($myArray[i]['due'] <= 5){ echo " class='dueSoon'"; }
  echo "> $myArray[i]['customer'] - $myArray[i]['date'] - $myArray[i]['due'] </div>";
?>

以便在少于5天的时间内输出以下内容:

<div class="dueSoon"> ... </div>

然后css:

.dueSoon { background-color:red; }

答案 1 :(得分:0)

在PHP代码中,检查这个条件,如果满足条件,则将css类添加到该div(满足条件)。

在CSS文件中定义CSS类。

答案 2 :(得分:0)

我们假设您的数组名为 results

CSS

.red{
background-color: red;
}

以下是您必须用来打印此数组的PHP代码。

<?php foreach ($results as $result){?>
<div class="<?php if ($result['due'] < 5 || $result['due'] == 5) echo '.red';?>">
 Customer: <?php echo $result['customer']; ?>
 Date: <?php echo $result['date'];?>
 Due: <?php echo $result['due']; ?>
</div>
<?php } ?>