echo值反映相应的颜色字体

xyhw6mcr  于 2021-06-20  发布在  Mysql
关注(0)|答案(3)|浏览(387)

我想知道是否有可能回显一个变量,并根据其内容将改变相应的颜色值?这与将固定颜色设置为回显值不同。
例如:

<th>Status</th>
<td><?php echo $row['status']; ?></td>

数据库中的状态内容可以是:
“高”-红色字体,
“med”-橙色字体,
“低”-蓝色字体
因此,当echo'ed值为“high”时,表中反映的字体颜色应为红色。如果是“med”,字体颜色应该是橙色。如果“低”,字体颜色应该是蓝色。
如果可能,如何实现?谢谢你们!

uoifb46i

uoifb46i1#

一种方法是使用status值将css类分配给包含它的元素。

<td class="status-<?php echo strtolower($row['status']); ?>">
    <?php echo $row['status']; ?>
</td>

然后在样式表中,您可以用您想要的颜色定义可能的类。

.status-high {
    color: red;
}
/* etc. */
zphenhs4

zphenhs42#

可能是这样(未测试):

<?php
    function color($status){
        switch($status){
            case 'High':
                return 'style="color: red;"';
            break;
            case 'Med':
                return 'style="color: orange;"';
            break;
            case 'Low':
                return 'style="color: blue;"';
            break;
        }
    }
?>

<th>Status</th>
<td <?php echo color($row['status']); ?>><?php echo $row['status']; ?></td>
a2mppw5e

a2mppw5e3#

简单的css样式怎么样?
css

<style>
    .High { color: red; }
    .Med { color: orange; }
    .Low { color: blue; }
</style>

然后你的html/php

<th>Status</th>
<td class="<?php echo $row['status']; ?>"><?php echo $row['status']; ?></td>

或(相同结果)

<?php
    $thisStatus = $row['status'];

    echo '<th>Status</th>';
    echo '<td class="' . $thisStatus . '">' . $thisStatus . '</td>';
?>

相关问题