我正在从数据库中的数据构建状态表。现在,我获取数据并按如下方式存储:
$array = array();
while ($row = mysqli_fetch_assoc($q2r)) {
$array[] = $row;
}
之后,我想根据我检索的状态创建一个表并将单元格绘制为绿色或红色。为此,我使用了foreach:
foreach ($array as $key => $value) {
if(is_array($value)){
foreach ($value as $slot => $value) {
if(is_int($slot)){
echo "<tr>";
echo "is int slot";
if( $value == 1){
echo "<td style=\"background-color:#00FF00\">".PHP_EOL;
}else{
echo "<td style=\"background-color:#FF0000\">".PHP_EOL;
}
echo 750+50*$slot ."</td></tr>".PHP_EOL;
}
}
echo "<br/>";
}
}
现在,由于我从当前的测试查询中检索了2行,因此该代码创建了2个sepparate表。我想要实现的是单个表,如果该单元格的值为1,则显示绿色单元格,如果该单元格的值不为1,则显示红色。
例如,如果对于1号单元格,则检索&#34; 1&#34;在一个数组和&#34; 0&#34;在另一方面,我希望它将细胞涂成绿色。
感谢您的帮助,您可以给我!干杯!
编辑:数组输出上的vardump:
[0]=>
array(7) {
["date"]=>
string(10) "2016-03-11"
[1]=>
string(1) "0"
[2]=>
string(1) "1"
[3]=>
string(1) "1"
[4]=>
string(1) "0"
["doc_id"]=>
string(1) "0"
["day_id"]=>
string(1) "1"
}
[1]=>
array(7) {
["date"]=>
string(10) "2016-03-11"
[1]=>
string(1) "1"
[2]=>
string(1) "0"
[3]=>
string(1) "1"
[4]=>
string(1) "0"
["doc_id"]=>
string(1) "1"
["day_id"]=>
string(1) "2"
}
}