首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >而foreach循环则返回随机数字列表。

问而foreach循环则返回随机数字列表。
EN

Stack Overflow用户
提问于 2016-04-22 14:00:33
回答 3查看 43关注 0票数 0

我有几个列,我想把它转换成一个表,它的值与它所对应的行有关。例子:

在我的表中,有4列名为column1 column2 column3 column4。这些列只有一行将被找到。比如SELECT column1, column2, column3, column4 FROM operations WHERE active = '1'

它找到的行看起来如下(带有列)

代码语言:javascript
复制
column1 | column2 | column3 | column4
_____________________________________
3456    | 265     | 795     | 425

我想让它显示一张表,它看起来像:

代码语言:javascript
复制
column1 | 3456
column2 | 265
column3 | 795
column4 | 425

下面的脚本可以工作,但它也显示了一个随机的数字列表,我相信这些数字与列有某种关联。

代码语言:javascript
复制
function oreAmount() {
        $sql = mysqli_query($this->con, "SELECT `column1`,`column2`,`column3`,`column4` FROM operations WHERE active = '1'");
        while ($row = mysqli_fetch_array($sql)) {
            $rows[] = $row;
            foreach ($row as $key => $var) {
                echo "<tr><td>$key</td><td>$var</td></tr>";
            }
        }
    }

此函数显示以下内容:

代码语言:javascript
复制
0       | 3456
column1 | 3456
1       | 265
column2 | 265
2       | 795
column3 | 795
3       | 425
column4 | 425

我不知道这些数字是从哪里来的,我不知道为什么,我需要把它们移除。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-04-22 14:10:02

您应该使用mysqli_fetch_assoc而不是mysqli_fetch_array。

解释

mysqli_fetch_array总是用两种索引来返回结果。

  1. MYSQLI_NUM (数字键索引)
  2. MYSQLI_ASSOC (关联名称索引)

因此,要么传递param类型的索引,您想检索您的结果,如

mysqli_fetch_array($result,MYSQLI_ASSOC)。

或简单使用

mysqli_fetch_assoc

票数 0
EN

Stack Overflow用户

发布于 2016-04-22 14:06:14

试着使用

代码语言:javascript
复制
mysqli_fetch_assoc($sql)

这样,您将只获得列名。

http://php.net/manual/en/mysqli-result.fetch-assoc.php

票数 0
EN

Stack Overflow用户

发布于 2016-04-22 14:06:22

使用mysqli_fetch_assoc代替mysqli_fetch_array

它将作为关联数组获取结果行。

详细描述

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36795873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档