Foreach循环故障和输出

时间:2011-10-15 16:35:35

标签: php arrays loops foreach

首先,我真的不是那种经验丰富的PHP,以及使用的最佳实践,所以请,好,;)

无论如何,我正在努力将谷歌分析输出到一个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标题文本除外。 它应仅在TR 1中显示Unique vistis,在TR2中显示Pageviews。

感谢您对此有任何意见..

亲切的问候! - 汤姆

1 个答案:

答案 0 :(得分:0)

无论变量$account是什么,它都会在$metricsArray as $m的每次迭代中循环遍历同一个数组。

相关问题