0

相当简单的问题,但我可以掌握它。所以我有这个代码。

<?php
$names = array('ronny','antony');

foreach($names as $name){

echo '<div style="background: green;" class="name">'.$name.'</div><br>';

}

如何更改每个名称的背景?就像 ronny 的背景是绿色的而安东尼的背景是橙色的?

谢谢。

4

3 回答 3

6
<?php
$names = array('ronny' => '#00ff00','antony' =>'#ff0000');

foreach($names as $name => $color){
    echo '<div style="background: ' . $color . ';" class="name">'.$name.'</div><br>';
}
于 2013-09-12T18:52:01.800 回答
3

使用 CSS,因为您可以将名称作为类

将此添加到您的 CSS 文件中

.ronny  {background-color: green}
.antony {background-color: orange}

编辑:

将名称添加到您的班级

echo '<div class="name '.$name.'">'.$name.'</div><br>';

编辑2:

mathielo 提出了一个很好的观点,即这仅在 $name 是一个单词时才有效。

但是,您可以根据您的场景使用其他类名来描述人员(员工、老板等)。

于 2013-09-12T18:54:09.150 回答
1

如果您想要更动态的东西(通常由较大的列表使用),例如为奇数/偶数行切换背景颜色,您可以使用以下内容:

<?php
$names = array('ronny','antony');

foreach($names as $key => $name){

$color = ($key % 2 === 0) ? 'green' : 'orange';

echo '<div style="background: '.$color.';" class="name">'.$name.'</div><br />';

}
?>
于 2013-09-12T19:04:55.920 回答