php - 使用条件格式将数组转换为字符串

标签 php mysql css arrays string

我正在尝试获取 MySQL 输出并将 CSS 条件格式应用于查询输出的 PHP 表。我在当前版本的代码中收到“数组到字符串的转换”——这至少会产生一些错误。这是我目前所拥有的。

<table>
<thead>
<tr>
<th>Date</th>
<th>High</th>
<th>Low</th>
<th>Average</th>
<th>DFNorm</th>
<th>HDD</th>
<th>CDD</th>
<th>Liquid</th>
<th>Snow</th>
<th>SDepth</th>
<th>WAvg</th>
<th>WMax</th>
<th>Clouds</th>
<th>Weather</th>
</tr>
</thead>
<tbody>

<?php

$result = mysqli_query($con,"
select
Date,
High,
Low,
Average,
DFNorm,
HDD,
CDD,
Liquid,
Snow,
SDepth,
WAvg,
WMax,
Clouds,
Weather
from CF6MCI order by Date DESC;");

while($row = mysqli_fetch_array($result))
{

$High = array();
$High[] = $row['High'];

/* NOT WORKING BELOW THIS LINE !!

$cHigh = array();
$cHigh = '';
switch ($High)
    {
    case ($High <= -25): $cHigh = 'C6TB25'; break;
    case ($High <= -20) and ($High >= -24): $cHigh = 'C6TB20B24'; break;
    case ($High <= -15) and ($High >= -19): $cHigh = 'C6TB15B19'; break;
    case ($High <= -10) and ($High >= -14): $cHigh = 'C6TB10B14'; break;
    case ($High <= -5) and ($High >= -9): $cHigh = 'C6TB05B09'; break;
    case ($High <= 0) and ($High >= -4): $cHigh = 'C6T000B04'; break;
    case ($High <= 4) and ($High >= 1): $cHigh = 'C6T004001'; break;
    case ($High <= 9) and ($High >= 5): $cHigh = 'C6T009005'; break;
    case ($High <= 14) and ($High >= 10): $cHigh = 'C6T014010'; break;
    case ($High <= 19) and ($High >= 15): $cHigh = 'C6T019015'; break;
    case ($High <= 24) and ($High >= 20): $cHigh = 'C6T024020'; break;
    case ($High <= 29) and ($High >= 25): $cHigh = 'C6T029025'; break;
    case ($High <= 32) and ($High >= 30): $cHigh = 'C6T032030'; break;
    case ($High <= 34) and ($High >= 33): $cHigh = 'C6T034033'; break;
    case ($High <= 39) and ($High >= 35): $cHigh = 'C6T039035'; break;
    case ($High <= 44) and ($High >= 40): $cHigh = 'C6T044040'; break;
    case ($High <= 49) and ($High >= 45): $cHigh = 'C6T049045'; break;
    case ($High <= 54) and ($High >= 50): $cHigh = 'C6T054050'; break;
    case ($High <= 59) and ($High >= 55): $cHigh = 'C6T059055'; break;
    case ($High <= 64) and ($High >= 60): $cHigh = 'C6T064060'; break;
    case ($High <= 69) and ($High >= 65): $cHigh = 'C6T069065'; break;
    case ($High <= 74) and ($High >= 70): $cHigh = 'C6T074070'; break;
    case ($High <= 79) and ($High >= 75): $cHigh = 'C6T079075'; break;
    case ($High <= 84) and ($High >= 80): $cHigh = 'C6T084080'; break;
    case ($High <= 89) and ($High >= 85): $cHigh = 'C6T089085'; break;
    case ($High <= 94) and ($High >= 90): $cHigh = 'C6T094090'; break;
    case ($High <= 99) and ($High >= 95): $cHigh = 'C6T099095'; break;
    case ($High <= 104) and ($High >= 100): $cHigh = 'C6T104100'; break;
    case ($High <= 109) and ($High >= 105): $cHigh = 'C6T109105'; break;
    case ($High <= 114) and ($High >= 110): $cHigh = 'C6T114110'; break;
    case ($High <= 119) and ($High >= 115): $cHigh = 'C6T119115'; break;
    case ($High >= 120): $cHigh = 'C6T120'; break;
    }
NOT WORKING ABOVE THIS LINE!! */

echo "<tr>";
echo "<td>" . $row['Date'] . "</td>";
echo "<td>" . ($High) . "</td>"; // class='" $cHigh "' -- THIS IS WHERE IT ERRORS STRING
echo "<td>" . $row['Low'] . "</td>"; // class='" $cLow "'
echo "<td>" . $row['Average'] . "</td>";
echo "<td>" . $row['DFNorm'] . "</td>";
echo "<td>" . $row['HDD'] . "</td>";
echo "<td>" . $row['CDD'] . "</td>";
echo "<td>" . $row['Liquid'] . "</td>"; // class='" $cLiquid "'
echo "<td>" . $row['Snow'] . "</td>"; // class='" $cSnow "'
echo "<td>" . $row['SDepth'] . "</td>";
echo "<td>" . $row['WAvg'] . "</td>";
echo "<td>" . $row['WMax'] . "</td>"; // class='" $cWMax "'
echo "<td>" . $row['Clouds'] . "</td>"; // class='" $cClouds"'
echo "<td>" . $row['Weather'] . "</td>";
echo "</tr>";

}

?>

最佳答案

您不能将数组与整数进行比较。

替换

$High = array();
$High[] = $row['High'];

$High = $row['High'];

不需要将其设为数组,因为您只需要一个值。

如果您想检查一系列值,您也不能执行 switch($High)。相反,您可以使用 switch(true)

顺便说一句,您也不需要将 $cHigh 设为数组。

关于php - 使用条件格式将数组转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22214542/

相关文章:

c# - 只允许两种类型的用户

python - 无法安装 MySQL-python [CentOS]

javascript - 隐藏的 Tailwind 移动设备无法正常工作

javascript - 如何从angularjs中的选择选项中获取选定的值

php - 如何制作没有数据库的PHP模板?

php - 如果其他表中不存在,则从 mysql 中检索值

php - Yii框架2.0 Active Record选择具有一定条件的记录

不幸的是,android 应用程序在从真实设备运行时停止了

html - 如何并排对齐 ascii 字符和文本?

javascript - wordpress - 如何将所见即所得添加到具有特定类的文本区域