0

表中的列数取决于表中的数据量。表中的行数取决于不同表中的行数。这些表的示例如下

environments        patches
  id | name           id |    name
 ____|______         ____|____________
   1 | dev             1 | firstPatch
   2 | test            2 | secondPatch
   3 | prod            3 | thirdPatch

我正在寻找的最终结果如下<table>

 _________________________________
| Patch Name  | dev | test | prod |
|_____________|_____|______|______|
| thirdPatch  |     |      |      |
| secondPatch |  x  |      |      |
|_firstPatch__|_____|______|______|

我了解如何使用while()循环来构建表头。而且我了解如何使用 awhile()来构建行。

echo "<tr>";
while ($env = $listEnvs->fetch_assoc()){
    echo "<th>".$env['name']."</th>"
}
echo "</tr>";

--AND--

while ($patch = $listPatches->fetch_assoc()){
    echo "<tr><td>".$patch['name']."</td></tr>";
}

我正在努力解决的是每个补丁/环境对的单元格将包含从其他几个表中提取的数据。所以了解patch.id和了解environment.id是很重要的。示例带有xis的单元格patch.id = 2, environment.id = 1在构建表格时,如何确保每个单元格都有这些必要的信息?

4

1 回答 1

1

尝试创建一个像$content[$patch.id][$environment.id].

然后你可以添加echo($content[$patch.id][$environment.id])到你while$patch. 你穿过补丁,$patch.id众所周知。对于$environment.id,您应该创建一个包含所有 environment.id 的数组并使用 遍历它$environment.id[i],其中$i应该随着每个新列而增加(并在新行开始时设置为 0)。

在(坏的)伪代码中:

walkthrough environments {

    save array with environments
    echo table headers

}

walk through patches {

    echo table 'row headers'

    walk through environment array {

        echo content[patch.id][environment.id]

    }

}
于 2013-07-16T20:30:06.100 回答