根据切换值

时间:2017-10-05 09:31:38

标签: php

我想根据switch语句的值更改文本值的颜色。例如,如果值等于'Hello',则将其设为绿色。我已经包含了一些代码,如果有人能就如何实现这一目标提供一些帮助,我将不胜感激。非常感谢。

switch ($row['destroydate']) {

  case NULL:

    $destroydate = 'No Date Set'; <---MAKE RED
    //echo $destroyeddate;
    break;

  case "0000-00-00":

    $destroydate = 'No Date Set'; <--- MAKE GREEN

    break;

  default:

    $destroydate = $row['destroydate']; <--- MAKE BLUE

    break;

}

2 个答案:

答案 0 :(得分:1)

您可以尝试使用

switch ($row['destroydate']) {

  case NULL:

    $destroydate = '<span style="color:#FF0000">No Date Set</span>'; <---MAKE RED
    //echo $destroyeddate;
    break;

  case "0000-00-00":

    $destroydate = '<span style="color:#39CD0D">No Date Set</span>'; <--- MAKE GREEN

    break;

  default:

    $destroydate = '<span style="color:#0808D8 ">'.$row["destroydate"].'</span>'; <--- MAKE BLUE

    break;

}

答案 1 :(得分:0)

你应该在下面使用它。创建一个函数并使用它发送日期数据。开关将始终返回结果。这样,您始终可以在任何文件中使用新功能。如果有任何需要添加/更改的内容,则无需更改使用此开关的所有文件,只需更改该功能即可。如果你愿意:你也可以使它成为一个静态函数(因为它只返回一些html)。

/**
 * @param $date
 *
 * @return string
 */
    Public function getDateColor($date)
    {
        // Check on date and return result
        switch($date):
            case(empty($date)):
                return '<span color="red">No Date Set</span>';
                break;
            case($date == 0000-00-00):
                return '<span color="Green">No Date Set</span>';
                break;
            default:
                return '<span color="blue">' . $date . '</span>';
        endswitch;
    }