PHP HTML и массив - показать результат из массива определенным образом - PullRequest
0 голосов
/ 31 мая 2018

У меня небольшая проблема для отображения результата из массива.

Я хочу показать информацию из массива в таблице html, но в определенном порядке.Я сделал рисунок, который показывает, как я хочу, чтобы результат выглядел так, как будто у меня есть этот массив:

<code>$array[] = array('date' => $datesMonth, 'buro' => $buro_name, 'pechalba' => $pechalba, 'ime' => $ime);

echo '<pre>'.print_r($array,1).'
';Array ([0] => Array ([дата] => 2018-05-01 [buro] => Kate [pechalba] => 48.66 [ime] => silvi) [1] => Array ([date] =>2018-05-02 [buro] => Кейт [pechalba] => 135.09 [ime] => silvi) [2] => Массив ([дата] => 2018-05-03 [buro] => Кейт [pechalba]=> 288.03 [ime] => cveti) [3] => Массив ([дата] => 2018-05-04 [buro] => Кейт [pechalba] => 95.36 [ime] => silvi) [4] => Array ([дата] => 2018-05-05 [buro] => Kate [pechalba] => 74,62 [ime] => maya) [5] => Array ([дата] => 2018-05-01 [buro] => Sisi [pechalba] => 54,3 [ime] => ivo) [6] => Массив ([date] => 2018-05-02 [buro] => Sisi [pechalba] => 169.01 [ime]=> ivo) [7] => Array ([дата] => 2018-05-03 [buro] => Sisi [pechalba] => 216.31 [ime] => ivo) [8] => Array ([дата]=> 2018-05-04 [buro] => Sisi [pechalba] => 285,6 [ime] => ivo) [9] => Массив ([дата] => 2018-05-05 [buro] => Sisi [pechalba] => 11,7 [ime] => ivo) [10] => Массив ([date] => 2018-05-01 [buro] => Gala [pechalba] => 20.44 [ime] => maya) [11] => Массив ([дата] => 2018-05-02 [buro] => Gala [pechalba] => 55.49 [ime] => maya) [12] => Массив ([дата] => 2018-05-03 [buro] => Gala [pechalba] => 161.23[ime] => maya) [13] => Массив ([date] => 2018-05-04 [buro] => Gala [pechalba] => 69.29 [ime] => cveti) [14] => Array ([date] => 2018-05-05 [buro] => Gala [pechalba] => 36.13 [ime] => silvi))

Я хочу показать информацию из массива в htmlтаблица таким образом:

enter image description here

Можно ли это сделать с помощью php, и если да, то как я могу это сделать?

1 Ответ

0 голосов
/ 31 мая 2018

Это генерирует таблицу из массива, таблица стилей зависит от вас.

$groups = [];
foreach ($array as $data) {
    if (!in_array($data['buro'], $groups)) {
        $groups[$data['buro']][] = $data;
    }
}
// create header
echo "<tr>";
foreach($groups as $key => $group) {
    echo "<th colspan='3'>" . $key . "</th>";
}
echo "</tr>";

// create body
$stack = count(array_values($groups)[0]);

for ($i = 0; $i < $stack; $i++) {
    echo "<tr>";
    foreach ($groups as $group) {
        echo "<td>" . $group[$i]['date'] . "</td>";
        echo "<td>" . $group[$i]['pechalba'] . "</td>";
        echo "<td>" . $group[$i]['ime'] . "</td>";
    }
    echo "</tr>";
}

Обновление: Я запускаю его локально и исправляю свои ошибки, теперь кажется, что оно работает как положено

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...