【发布时间】:2020-11-07 10:11:46
【问题描述】:
我正在接收来自 XML 的数据,其中包含有关某些位置的天气信息。我正在获取有关温度的信息,我想这样显示:
如果温度高于13,数字将显示为红色
如果温度在0到12之间,数字显示为白色
如果温度低于0,数字显示为蓝色
我目前已经尝试过:
if ($result[0]['temperature'] > 13){
$temperature = "<span style='color:#FD1B1C;'>". $result[0]['temperature']. "°"."</span>";
}
if ($result[0]['temperature'] >=0 && $result[0]['temperature'] <=12){
$temperature = "<span style='color:white;'>". $result[0]['temperature']. "°"."</span>";
}
if ($result[0]['temperature'] < 0){
$temperature = "<span style='color:blue;'>". $result[0]['temperature']. "°"."</span>";
}
此代码^ 有效,但很快就会变得很长而且“不清楚”。这个$temperature 只是一个温度,当我想显示 7 个温度(一周中的每一天一个)和多个位置时,我很快就会得到很多“$temperature n”变量和行。示例:我展示的一种温度是 9 行代码。当我想在 7 天和 3 个位置展示它时,它是 9x7*3 = 189 行 + 间距,你明白了。
也许最好的办法是将这段代码放在另一个文件中,然后引用它?
有关信息:
XML 显示每 6 小时(0-6、6-12、6-18、18-24)的温度,这意味着我获取 $result[0],[4],[8],[12] 以获取每一天的温度。
【问题讨论】:
-
如果你的温度正好是 13 怎么办?你可以......在你的
ifs 中只设置颜色,在你所有的ifs 使用类似$temperature = "<span style='color:$color'>". $result[0]['temperature']. "°"."</span>";
标签: php xml temperature