Как создать таблицу из массива? - PullRequest
0 голосов
/ 17 ноября 2011

У меня есть небольшие трудности при создании некоторых таблиц в определенном порядке из этого массива: $test.

Массив выглядит так:

Array
(
    [ET5] => Array(
        [0] => Array(
            [0] => Array(
                [total] => 430
            )
        )
        [1] => Array(
            [0] => Array(
                [total] => 406
            )
        )
    )
    [FA] => Array(
        [0] => Array(
            [0] => Array(
                [total] => 0
            )
        )                   
        [1] => Array(
            [0] => Array(
                [total] => 0
            )
        )
    )
    [ET5] => Array(
        [0] => Array(
            [0] => Array(
                [total] => 189
            )
        )
        [1] => Array(
            [0] => Array(
                [total] => 228
            )
        )
    )
    [FA] => Array(
        [0] => Array(
            [0] => Array(
                [total] => 0
            )
        )
        [1] => Array(
            [0] => Array(
                [total] => 0
            )
        )
    )
)

и таблицы, которые я хочу создать, должны выглядеть следующим образом:

table1

test1      test2   test3
ET5        430     189
FA         0       0

table2

test1      test2    test3
ET5        406      228
FA         0        0

test1, test2, test3 - известные строки

Я немного застрял на этом, обратите внимание, как значения из ET5 в двух таблицах.

Есть идеи по этому поводу?

1 Ответ

1 голос
/ 17 ноября 2011

Вам определенно не следует перезаписывать ключи массива, как вы делали выше.

Я бы выделил то, что вы хотите в каждой таблице, добавив их в виде массивов в ваш уже многомерный массив ...

$test = array(
    [0] => array(
        [ET5] => array(), //rest of inner contents inside these arrays of course
        [FA] => array()
    ),
    [1] => array(
        [ET5] => array(),
        [FA] => array()
    )
);

затем запустите цикл foreach, как для любого массива:

<?php foreach($test AS $key => $val): ?>
<table>
    <tr>
        <th>Test1</th>
        <th>Test2</th>
        <th>Test3</th>
    </tr>
    <?php foreach($val AS $v => $info): ?>
    <tr>
        <td><?php echo $v; ?></td>
        <td><?php echo $info[0][0]['total']; ?></td>
        <td><?php echo $info[1][0]['total']; ?></td>
    </tr>
    <?php endforeach; ?>
</table>    
<?php endforeach; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...