Какой бы ни была переменная $account
, она проходит через один и тот же массив каждую итерацию $metricsArray as $m
.
Во-первых, я действительно не очень разбираюсь в PHP, и у меня есть лучшие практики, поэтому, пожалуйста, будьте любезны;)
Во всяком случае, я борюсь с выводом Google Analytics в таблицу Java, где мой foreach для отображения страниц и просмотров страниц вообще меня не слушает: /
Просто чтобы прояснить, нет ничего плохого в массиве, когда при указании значений в обычной таблице они верны. Я совершенно уверен, что есть что-то с моим foreach и, возможно, подсчет циклов или ?? не имеют ни малейшего представления о?
Array (
[0] => Array ( [id] => http://www.google.com/analytics/feeds/data?ga:date=20110930&start-date=2011-09-30&end-date=2011-10-15 [updated] => 2011-10-14T17:00:00.001-07:00 [title] => ga:date=20110930 [dimensions] => Array ( [name] => date [value] => 20110930 ) [metrics] => Array ( [0] => Array ( [confidenceInterval] => 0.0 [name] => newVisits [type] => integer [value] => 4 )
[1] => Array ( [id] => http://www.google.com/analytics/feeds/data?date=20111001&start-date=2011-09-30&end-date=2011-10-15 [updated] => 2011-10-14T17:00:00.001-07:00 [title] => ga:date=20111001 [dimensions] => Array ( [name] => date [value] => 20111001 ) [metrics] => Array ( [0] => Array ( [confidenceInterval] => 0.0 [name] => newVisits [type] => integer [value] => 5 ) [1] => Array ( [confidenceInterval] => 0.0 [name] => uniquePageviews [type] => integer [value] => 54 ) ) )
and so on.
А теперь мой прогноз: Примечание: metricsarray => (uniquePageviews + NewVisits), только для заголовков
<?php if (!empty($metricsArray)): ?>
<?php foreach ($metricsArray as $m): ?>
<tr>
<th><?php echo $m ?></th> <!-- To display UniqueHits and Pageviews titles-->
<?php
foreach ($account['Account']['dataPoints'] as $data): ?>
<?php if (!empty($data['metrics'])): ?>
<?php foreach ($data['metrics'] as $key => $val): ?>
<?php if (is_numeric($key)): ?>
<td><?php echo $val['value'] ?></td>
<?php elseif ($key == 'value'): ?>
<td><?php echo $val ?></td>
<?php endif ?>
<?php endforeach ?>
<?php endif ?>
<?php endforeach ?>
</tr>
<?php endforeach ?>
<?php endif ?>
Моя проблема в том, что этот вывод выглядит так:
<tr>
<th>NewVisits</th>
<td>1</td> <!-- Unique visit
<td>7</td> <!-- PageViews
<td>2</td> <!-- Uniwue hit
<td>7</td> <!-- PageViews
+++++
</tr>
<tr>
<th>NUniquePageviews</th>
<td>1</td> <!-- Unique visit
<td>7</td> <!-- PageViews
<td>2</td> <!-- Uniwue hit
<td>7</td> <!-- PageViews
+++++
</tr>
Моя проблема здесь в том, что он отображается одинаково в обоих TR, за исключением текста заголовка TH. Он должен отображать уникальные vistis только в TR 1, а просмотры страниц в TR2.
Спасибо за любой вклад в этом ..
С уважением! -Том
Какой бы ни была переменная $account
, она проходит через один и тот же массив каждую итерацию $metricsArray as $m
.