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

时间:2011-03-29 13:29:37

标签: php mysql json

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

array [0] [0] =第1列名称
array [0] [1] =第2列名称
array [0] [2] =第3列名称

array [1] [0] =第1列第1行值
array [1] [1] =第2列第1行值
array [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']; 
} 

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

2 个答案:

答案 0 :(得分:2)

使用mysql_fetch_assoc - 它将返回

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

然后使用json_encode($ data)

答案 1 :(得分:1)

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

$results = array();
while ($row = mysql_fetch_assoc($db_result))
{
  $results[] = $row;
}
foreach ($results as $column=>$value)
{
  // loop over $column and $value
}