如何通过PHP将列标题作为第一行?我通过'Describe [tablename]'查询知道列名。但不确定如何在下面的代码中将它们作为标头获取。 任何帮助,将不胜感激。 我使用下面的代码来获取数据:
$sql = 'SELECT * FROM [tablename]';
$result = mysqli_query($conn, $sql);
echo '<table cellpadding="5" cellspacing="5">';
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "<tr>";
foreach ($row as $value) {
echo "<td>" . $value . "</td>";
}
echo "</tr>";
}
} else {
echo "0 results";
}
echo '</table>';
答案 0 :(得分:3)
要从数据库列打印表头,请使用以下代码:
echo "<tr>";
while ($col = $result->fetch_field()) {
echo "<th>" . $col->name . "</th>";
}
echo "</tr>";
答案 1 :(得分:1)
如果使用关联数组进行提取,您还可以在任何行上使用array_keys
。但是这样,如果结果计数为0,则不会获得任何列名。
示例:
$columns = array_keys($result->fetch_assoc()[0]);
foreach ($columns as $column) {
echo $column . '<br>';
}