显示表格的php;第一列带有 mysql 列注释和第二列转置行结果

标签 php mysql arrays loops information-schema

为可能不好的标题道歉 - 最好直观地显示我的目标:

我希望在用户访问 SomeURL.com/test.php?id=101 时在页面上显示这样的内容

| Questions      | Answers       |
----------------------------------
| 1(a) First Name| Pedro         |
----------------------------------
| 1(b) Surname   | Millers       |
----------------------------------
| 2(a) Weight    | 150lbs        |
----------------------------------

这将通过查询 mysql 数据库来实现。首先:

SELECT * FROM Questionnaire WHERE idQuestionnaire=101;

哪个返回:

| idQuestionnaire | FirstName    | Surname    | Weight    |
-----------------------------------------------------------
| 101             | Pedro        | Millers    | 150lbs    |

在我的表格设置中,我设置了列注释。即对于列“FirstName”,注释为“1(a) First Name”。要检索所有这些评论,我可以执行另一个查询:

SELECT COLUMN_NAMES FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME='Questionnaire';

哪个返回:

| COLUMN_COMMENTS |
-------------------
| 1(a) First Name |
-------------------
| 1(b) Surname    |
-------------------
| 2(a) Weight     |
-------------------

我想用数组/循环而不是硬代码来自动化代码的原因是因为我使用的实际表有超过 400 个字段,并且字段可能会被修改或添加,所以我不想一直更改php 代码以及发生这种情况时。这似乎是一项非常简单的任务,但我无法终生找到相关的记录在案的解决方案。

最佳答案

我建议您对结果集使用 mysqli fetch_fields() 函数,以获取有关结果集中包含的列的信息,而不是查询 INFORMATION_SCHEMA 中的 View 。

fetch_fields() 适用于仅引用表中列子集的查询,或返回表达式的查询,或返回多个表中的列。

http://php.net/manual/en/mysqli.quickstart.metadata.php

关于显示表格的php;第一列带有 mysql 列注释和第二列转置行结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18367752/

相关文章:

javascript - 如何使用jquery ajax和codeigniter执行编辑和删除操作

mysql - 使用 MYSQL 合并同名行

javascript - JS - 如何从数组中删除其他数组中存在的项目?

php - 在 PHP 父类(super class)的静态方法中访问子类的静态属性的正确方法是什么?

php - 如何从 moltin 获取产品中获取特定数组值

php - 获取坐标是否在折线内

mysql - 在 MySQL 中使用 Group by 和 Order by

java - Oracle DB表与 View (物化 View )的关系

javascript - 在 for 循环内循环 - 嵌套数组

java - 扫描和修改二维阵列