以“错误”的方式呈现表格:转置列和行


Render a Table the "wrong" way: transpose Columns and Rows?

我想知道是否有一种简单的方法可以使用标准 while(mysql_fetch_assoc) 绘制表格,其中最左边的列是这样的标题:

      姓名 |彼得·杰克逊 |史蒂文·斯皮尔伯格 |马丁·斯科塞斯 |出生年份 |1961年 |1946年 |1942年 |电影 |指环王 |侏罗纪公园 |恐惧角 |

(老鼠!SO 不支持表标记)。

我会通过将

元素添加到数组结构然后打印该结构来做到这一点:

$data = array('name' => array(), 'birth' => array(), 'movie' => array());
while($r = mysql_fetch_assoc(...)) {
  $data['name'][] = $r['name'];
  ...
}
echo '<th>Name</th>';
foreach($data['name'] as $n) {
  printf('<td>%s</td>', htmlspecialchars($n));
}
...