MySQL/PHP:如何获取列和关联数据

Posted

技术标签:

【中文标题】MySQL/PHP:如何获取列和关联数据【英文标题】:MySQL/PHP: How to get columns and associated data 【发布时间】:2011-03-29 13:29:36 【问题描述】:

我知道我可以使用以下方法从数据库中获取列/字段名称:SHOW COLUMNS FROM tablename...但是有没有办法我可以获取返回的列以及内容,所以我的回报是像这样:

数组[0][0] = 第 1 列名称 数组[0][1] = 第 2 列名称 数组[0][2] = 第 3 列名称

数组[1][0] = 列 1 行 1 值 数组[1][1] = 第 2 列第 1 行值 数组[1][2] = 第 3 列第 1 行值

...

我正在寻找构建一个 JSON 对象

jsonObj = 项目 1 第 1 列名称:第 1 列第 1 行值,                             第 2 列名称:第 2 列第 1 行值,                                       第 3 列名称:第 3 列第 1 行值...

编辑:我应该补充一点,我知道字段名称与查询结果一起返回

(SELECT * FROM sometable) 如果你使用

while ($row = mysql_fetch_array($results))  
 $thisfield = $row['fieldname']; 
 

但是当我不知道它们(字段名称)时,如何访问它们?

【问题讨论】:

【参考方案1】:

使用 mysql_fetch_assoc - 它会返回

array("name" => "value", "name2" => "value2" ... );

然后使用 json_encode($data)

【讨论】:

谢谢,它在我脑海中浮现,我只是想不起来。你太快了,我得等10分钟才能接受你的回答……:D【参考方案2】:

在您使用的任何 DB 库中使用 mysql_fetch_assoc() 或等效项将提供列名作为数组键。

$results = array();
while ($row = mysql_fetch_assoc($db_result))

  $results[] = $row;

foreach ($results as $column=>$value)

  // loop over $column and $value

【讨论】:

以上是关于MySQL/PHP:如何获取列和关联数据的主要内容,如果未能解决你的问题,请参考以下文章

获取列和关联列名之间的最大值

Mysql Php如何根据组获取和合并数据

如何从 MySQL 获取整数作为 PHP 中的整数?

如何使用 Vuejs 前端框架使用 MySQL/PHP 从服务器获取数据

Debian搭建WordPress

尝试获取按 id 过滤的所有行并将它们作为数组(mysql,php)返回