【问题标题】:Dynamic Table Iteration PHP MySql动态表迭代 PHP MySql
【发布时间】:2014-01-29 05:01:04
【问题描述】:

假设我有一个如下所示的 SQL 语句:

SELECT * FROM myTable;

现在回到 PHP 我有一个结果数组 $result[],如果我不知道列名,我如何遍历该数组并打印出值?我可以以某种方式询问数组吗?

背景:我有一个表,我已经根据元数据表渲染了表标题,现在我需要填充数据,但我只想提取与表标题匹配的字段名称并插入它们进入 HTML 表格。

这个过程是动态发生的,每个表都是不同的,并且有不同的字段名称(通过查询元数据发现),但共享相同的 php 代码,因此它需要足够灵活和智能来确定要呈现的内容。

【问题讨论】:

  • 您始终可以使用关联数组的key 作为列名。

标签: php mysql sql arrays


【解决方案1】:

编辑:我现在明白您的 $result 是一个 数组数组

foreach ($result as $row) {
    foreach ($row as $key => $value) {
      print "column $key has value $value\n";
    }
}

或者您可以调用array_keys($row) 来返回关联数组的键。

【讨论】:

  • 我知道你要去哪里,这很有意义,但是当我去 echo $value 时,它​​会出错(数组到字符串的转换)并且只打印单词数组
  • 忽略,$result 是一个多维数组,需要做第二个 foreach()
【解决方案2】:

在这种情况下,您可以将 foreach 循环与键值对一起使用。

你可以这样使用,

foreach($result as $key=>$value) {
    //$key returns the key of $result array
    //$value returns the respective value of that key
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-07
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    • 1970-01-01
    相关资源
    最近更新 更多