prepare($sql); $stmt->execute(); $resul-6ren">
gpt4 book ai didi

php - 如何从 PDO 的 fetchAll 结果中获取列名?

转载 作者:行者123 更新时间:2023-11-29 19:12:11 24 4
gpt4 key购买 nike

我创建一个代码以从表格中显示

$sql = "SELECT * FROM table"; 
$stmt = $dbcon->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll();

为了显示结果,我使用以下代码:

<?php foreach($result as $readrow){ ?>
<div class="table-row">
<td><?php echo $readrow['id'];?></td>
<td><?php echo $readrow['area'];?></td>
<td><?php echo $readrow['color'];?></td>
<?php } ?>

有什么办法可以让表格显示标题吗?

最佳答案

有很多重复的问题,但所有答案都毫无理由,提供了涉及运行额外查询等的复杂解决方案。

虽然解决方案就在这里:当使用 fetchAll() 时,您已经在 $result 变量中拥有所有列标题

$headerNames = $result ? array_keys($result[0]) : [];

现在您可以通过 $coulnNames 进行 foreach 来获取表头,并通过 $result 进行 foreach 来显示结果。

<table class='table'>
<tr>
<?php foreach($coulmnNames as $name): ?>
<th><?= $name ?></th>
<?php endforeach ?>
</tr>
<?php foreach($result as $row){ ?>
<tr class="table-row">
<?php foreach($result as $value){ ?>
<td><?= $value ?></td>
</tr>
<?php endforeach ?>
</table>

关于php - 如何从 PDO 的 fetchAll 结果中获取列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42992145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com