使用 PDO 检索表列名称
问题:
如何检索列使用 PDO 的表的名称?
上下文:
考虑一个名为“contacts”的表,其中包含以下列:
尝试:
使用以下代码进行了尝试:
<code class="php">$db = $connection->get_connection(); $select = $db->query('SELECT * FROM contacts'); $total_column = $select->columnCount(); var_dump($total_column); for ($counter = 0; $counter < $total_column; $counter ++) { $meta = $select->getColumnMeta($counter); $column[] = $meta['name']; } print_r($column);</code>
但是,此尝试产生了意外结果,返回了所有列名称,包括不存在的列。
解决方案(特定于 MySQL):
An MySQL 数据库的替代解决方案如下:
<code class="php">$table_fields = $dbh->query("DESCRIBE tablename")->fetchAll(PDO::FETCH_COLUMN);</code>
此查询使用“DESCRIBE”命令检索表的列名称。结果是一个数组,其中包含列名称(按照列名称在表架构中出现的顺序排列)。
输出:
Array ( [0] => id [1] => name [2] => age ... )
以上是如何在 MySQL 中使用 PDO 检索表列名?的详细内容。更多信息请关注PHP中文网其他相关文章!