根据变量更改文本颜色的最简单方法是什么?
例如:如果$ var在1-5之间,则为绿色。在6-10之间,橘子。大于11,红色。
答案 0 :(得分:10)
function getProperColor($number)
{
if ($var > 0 && $var <= 5)
return '#00FF00';
else if ($var >= 6 && $var <= 10)
return = '#FF8000';
else if ($var >= 11)
return = '#FF0000';
}
并像这样使用
<div style="background-color: <?=getProperColor($result['number'])?>;"><?=$result["title"]?></div>
答案 1 :(得分:5)
$color = "#000000";
if (($v >= 1) && ($v <= 5))
$color = "#00FF00";
else if (($v >= 6) && ($v <= 10))
$color = "#FF9900";
else if ($v >= 11)
$color = "#FF0000";
echo "<span style=\"color: $color\">Text</span>";
答案 2 :(得分:3)
颜色值是否用常数索引?我会准备哈希地图
$colorMap[0] = '#00FF00'; //green
$colorMap[1] = '#0000FF'; //blue
$colorMap[2] = '#FF0000'; //red
$colorMap[3] = '#330000'; //dark red
等等。然后使用CSS
<span style="color: <?php echo $colorMap[$var]; ?>;">desired color</span>
答案 3 :(得分:2)
类似if语句的三重奏:
if ($var < 10) $color = '#FF8000';
if ($var < 6) $color = '#00FF00';
if ($var >= 10) $color = '#FF0000';
echo "<span style=\"color: $color;\">This text is colored.</span>";
答案 4 :(得分:2)
如果要使用一组if语句
,则需要实际使用elseif语句 if ($var < 6) $color = '#00FF00';
elseif ($var < 10) $color = '#FF8000';
elseif ($var > 10) $color = '#FF0000';
答案 5 :(得分:2)
我会使用CSS颜色,并且还会突出显示数字11根据您的规则不会映射到任何颜色这一事实,使大部分答案无效:)
<?php
$color=getColor(11);
function getColor($n){
// Is number between 1 and 5?
if($n>=1 && $n<=5) return "green";
// Is number between 6 and 10?
if($n>=6 && $n<=10) return "orange";
// Is number greater than 11
if($n>11) return "red";
// Return default (black) for all other numbers
return "black";
}
?>
<span style='color:<?=$color?>'>Text</span>
答案 6 :(得分:1)
一个简单的解决方案可能是做这样的事情......
if ($var < 6)
$style="0F0";
else if ($var < 11)
$style="F50";
else
$style = "F00";
?><div style="color:#<?php echo $style; ?>">blar</div>
答案 7 :(得分:1)
三元运算符为您的简单示例。
$color = ($var < 6) ? '#FF8000' : (($var < 10) ? '#00FF00' : '#FF0000');
答案 8 :(得分:0)
我会使用CSS类而不是内联样式的颜色......让CSS工作......
<?php
$var = 5;
$class = (($var < 6) ? 'greenclass' : (($var < 11) ? 'orangeclass' : 'redclass' ))
?>
<span class="<?php echo $class?>">text</div>
如果这些答案都不是您所期望的,那么您究竟想要完成什么?你能提供更多信息吗?
答案 9 :(得分:0)
答案 10 :(得分:0)
假设一个使用范围比这更灵活:
function getProperColor($range, $value)
{
foreach($range as $key => $color)
{
if ($value <= $key)
return $color;
}
return $color;
}
$colorRange = array(
5 => 'green',
10 => 'orange',
11 => 'red'
);
for($i=-1;$i<16;$i+=2)
{
echo "$i:" . getProperColor($colorRange, $i) . "\n";
}
这将输出:
-1:green
1:green
3:green
5:green
7:orange
9:orange
11:red
13:red
15:red
答案 11 :(得分:0)
<?php
$var='2';
?>
<html>
<body>
<p>Hello Welcome.I am
<?php
if($var>0 && $var<=5)
echo '<p style=color:Green;>';
else if($var>=6 && $var<= 10)
echo '<p style=color:orange;>';
else
echo '<p style=color:red;>';
?>
I am a Developer.
</p>
</body>
答案 12 :(得分:0)
为什么不换开箱?这样会更清洁
$color = "";
switch(true){
case ($var > 0 && $var <= 5):
$color = '#00FF00';
break;
case ($var >= 6 && $var <= 10):
$color = '#00FF00';
break;
case ($var >= 11):
$color = '#00FF00';
break;
default:
$color = '#000000';
答案 13 :(得分:-1)
$color="green";
$text="foo";
echo wrapColor($color, $text);
function wrapColor($color, $text){
return "<span style=color:$color>$text</span>";
}