【问题标题】:PDO fetch as multidimensional array/objectPDO 作为多维数组/对象获取
【发布时间】:2014-09-12 01:26:45
【问题描述】:

我有一个 mysql 数据库,看起来像这样

    G4  G3  G2 Libuser
    1   a   1   1
    1   a   2   2
    1   b   1   3
    2   c   1   4
    2   c   1   5
    2   c   2   6
    3   d   1   7
    3   e   1   8
    3   e   2   9
    3   e   3   10
    …   …   …   …

数据库按G4、G3、G2、Libuser分组排序

我正在尝试使用这样的 HTML 表格结构来显示这些数据:

G4 = 1
     G3 = a
          G2 = 1
              Libuser = 1
          G2 = 2
              Libuser = 2
     G3 = b
          G2 = 1
              Libuser = 3
G4 = 2
etc…

所以我试图以关联多维数组的形式获取数据,然后通过数组循环打印数据会更容易。

PDO 是否有一个选项来获取这样的数据?我尝试使用 PDO_FETCH_ASSOC 和 PDO_FETCH_GROUP 但它似乎不适用于多个列组。我该怎么做?

谢谢。

【问题讨论】:

    标签: arrays pdo multidimensional-array


    【解决方案1】:

    您可以使用php.net 中的示例并创建一个函数来排列结果数组 你想要的方式

    <?php
    function customArrange($col1, $col2) {
        return array($col1 => $col2);
    }
    
    $sth = $dbh->prepare("SELECT G4, G3 FROM youTable");
    $sth->execute();
    
    $result = $sth->fetchAll(PDO::FETCH_FUNC, "customArrange");
    var_dump($result);
    ?>
    

    或者类似的东西

    【讨论】:

      猜你喜欢
      • 2023-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-30
      • 2022-01-23
      • 2018-04-25
      • 2013-02-05
      • 1970-01-01
      相关资源
      最近更新 更多