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

发布于 2024-10-28 09:14:08 字数 1074 浏览 2 评论 0原文

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

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

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

...

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

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

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

(SELECT * FROM sometable),如果您使用

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

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

I know I can get the column/field names from a database by using: SHOW COLUMNS FROM tablename...but is there a way I can get the columns returned as well as the content, so my return would be something like this:

array[0][0] = column 1 name
array[0][1] = column 2 name
array[0][2] = column 3 name

array[1][0] = column 1 row 1 value
array[1][1] = column 2 row 1 value
array[1][2] = column 3 row 1 value

...

I'm looking to build a JSON object

jsonObj = {
item 1 {
                              column 1 name: column 1 row 1 value,
                              column 2 name: column 2 row 1 value,
                              column 3 name : column 3 row 1 value...

Edit: I should add that I know the field names are returned with the query results

(SELECT * FROM sometable) and if you use

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

But how can I access them (the field names) when I do not know them?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

微暖i 2024-11-04 09:14:08

使用 mysql_fetch_assoc - 它将返回

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

然后使用 json_encode( $data )

use mysql_fetch_assoc - it will return

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

then use json_encode( $data )

风向决定发型 2024-11-04 09:14:08

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

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

Using mysql_fetch_assoc() or the equivalent in whatever DB library you use will provide the column names as array keys.

$results = array();
while ($row = mysql_fetch_assoc($db_result))
{
  $results[] = $row;
}
foreach ($results as $column=>$value)
{
  // loop over $column and $value
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文