将数据库表写入数组/哈希表


Write database table to array / hash table

我有一个数组,里面有来自数据库的数据,它是这样构建的:

Array
(
    [0] => Array
        (
            [ColumnName01] => Toplevel some value
            [ColumnName02] => Sublevel some value
            [ColumnName03] => some value
        )
    [1] => Array
        (
            [ColumnName01] => Toplevel some value
            [ColumnName02] => Sublevel some value
            [ColumnName03] => another value
        )
    ...

所以现在我想把这些东西放入一个新的数组(或哈希表)中,看起来像这样:

Array 
(
    [Toplevel some value] => Array
        (
            [Sublevel some value] => Array
                (
                    [0] => some value
                    [1] => another value
                )
        )
    [Toplevel some value] => Array
        (
            [Sublevel another value] => Array
                (
                    [0] => some value 2
                    [1] => another value 2
                )
        )
)

(希望清楚我想做什么)。

我想知道如何在PHP中做到这一点?!

您可以执行以下操作:

$result = array();
// $array is source array
foreach($array as $value) {
    $top = array_values(array_shift($value));
    $sub = array_values(array_shift($value));
    $result[$top[0]][$sub[0]] = array_values($value);
}
//here you result
print_r($result);