Мой массив начинается так:
Array
(
[report] => Cost History
[dimensions] => Array
(
[0] => Array
(
[time] => Array
(
[0] => Array
(
[label] => Total
[name] => total
)
[1] => Array
(
[name] => 2018-11
[label] => 2018-11
[direct] =>
[populated] => 1
[excluded] =>
[extended] =>
[sort_order] =>
[parent] => -1
)
[2] => Array
(
[name] => 2018-12
[label] => 2018-12
[direct] =>
[populated] => 1
[excluded] =>
[extended] =>
[sort_order] =>
[parent] => -1
)
[time] [0] -> [13] создает заголовок. Я хочу общий столбец в конце. Далее у меня есть
[1] => Array
(
[Category] => Array
(
[0] => Array
(
[label] => Total
[name] => total
)
[1] => Array
(
[name] => sqs
[label] => Simple Service
[direct] =>
[populated] =>
[excluded] =>
[extended] =>
[sort_order] =>
[parent] => -1
)
Это на том же уровне, что и время, и должно быть моим первым общим столбцом внизу, есть [0] -> [281] строк. затем у меня есть данные.
[data] => Array
(
[0] => Array
(
[0] => Array
(
[0] => 59639.827459504
)
[1] => Array
(
[0] => 0.4566711208
)
[2] => Array
(
[0] =>
)
[3] => Array
(
[0] =>
)
[4] => Array
(
[0] => 39.2084171093
)
Эти [данные] находятся на уровне [измерений], первый уровень массива предназначен для столбцов 1 -> [13]. и второй уровень для строк 1 -> [281]. с первой строкой внизу с итоговым значением и [data] вторым массивом total [0] в конце каждой строки. поэтому $ 59639,82 в правом нижнем углу.
далее мне нужно удалить все строки, которые в сумме = 0.
Вот то, с чего я начал, дает мне верхний ряд и первый столбец.
$json = json_decode($result, true);
$header = $json['dimensions'][0]['time'];
$file = fopen('file/test.html', 'w');
$header1 = array();
$header1[0] = '<h2>Combined cost report ACR AMA</h2><table border="3">' . PHP_EOL . '<tr>' . PHP_EOL . '<th>Services</th>' . PHP_EOL;
foreach($header as $item) {
$header1[] = '<th>' . $item['label'] . '</th>' . PHP_EOL;
}
$v = $header1[1];
unset($header1[1]);
$header1[] = $v;
$header1[] = '</tr>' . PHP_EOL;
#$header1 = array_reverse($header1);
$header2 = implode("",$header1);
fwrite($file, $header2);
$service = array();
$service1 = array();
$services = $json['dimensions'][1]['Category'];
foreach($services as $item) {
$service[] = '<tr>';
$service[] = '<td>' . $item['label'] . '</td>';
$service[] = '</tr>';
}
$v = $service[0];
unset($service[0]);
$service[] = $v;
$service = implode("",$service);
fwrite($file, $service);
$close = '</table>';
fwrite($file, $close);
fclose($file);
Что у меня есть
Что я хочу