从单个数组创建多维数组



查询mysql表后,我有以下sql结果集。它生成了一个数组,每一行都是一个元素。

Array
(
    [0] => stdClass Object
        (
            [quid] => 9

        )
    [1] => stdClass Object
        (
            [quid] => 10

        )
    [2] => stdClass Object
        (
            [quid] => 11

        )
    [3] => stdClass Object
        (
            [quid] => 9

        )
    [4] => stdClass Object
        (
            [quid] => 10

        )
    [5] => stdClass Object
        (
            [quid] => 11

        )

)

现在我想用php创建另一个数组,其中第一个键将保存整个数组的所有结果集,等等。

Array
    (
     [0] => array
        (
            [0] => stdClass Object
            (
                [quid] => 9
            )
            [1] => stdClass Object
            (
                [quid] => 10
            )
           [2] => stdClass Object
            (
                [quid] => 11
            )
    )
    [1] => array
        (
            [0] => stdClass Object
            (
                [quid] => 9
            )
            [1] => stdClass Object
            (
                [quid] => 10
            )
           [2] => stdClass Object
            (
                [quid] => 11
            )
    )
)

如果有进一步的细节,我很乐意编辑/更新这个答案。

如果我可以的话,我认为你的问题比你的PHP代码更"上游"。我建议你的数据库模式中缺少一些东西…

据我所知-(你的问题需要更多的细节来诚实)-你的数据库中有二维信息:

[x,y]

所以我们可以看到:

[0, 9],[0,10],[0,11]
[1, 9],[1,10],[1,11]

如果在你的模式中你有两列- x,y -你只需要选择并在PHP中适当地解析:

<?php
$arr = array();
$res = do_query("SELECT x,y FROM tbl;");
while ($row = get_row($res))
   $arr[$row['x']] = $row['y'];

等。

如果您的数据库中没有这两列,我完全不清楚您将如何在程序上将一维信息分解为2。

也许您可以演示您的模式和一些示例数据,并提供您试图解决的问题的更完整的解释?

相关内容

  • 没有找到相关文章

最新更新