我正在使用PHP中的google anaylitics gapi类返回以下数组,如下所示。循环遍历此数组并回显数据的最佳方法是什么?
我以为我可以使用像下面这样的foreach,但它会变成空白。这可能是一件容易的事情,但我正在努力让我的大脑进入正常状态。我认为问题可能与gapi类返回的数据有关,而不仅仅是数组?
foreach($results as $result) {
echo 'Goalresults 1:'. $result->metrics->goal1Completions;
echo 'Goalresults 2:'. $result->metrics->goal2Completions;
}
这也不起作用:
foreach($results as $result) {
echo 'Goalresults 1:'. $result[metrics][goal1Completions];
echo 'Goalresults 2:'. $result[metrics][goal2Completions];
}
但是给出了错误致命错误:不能在goals.php中使用gapiReportEntry类型的对象作为数组
阵列:
Array
(
[0] => gapiReportEntry Object
(
[metrics] => Array
(
[goal1Completions] => 7
[goal2Completions] => 18
)
[dimensions] => Array
(
[hour] => 01
[date] => 20131113
)
)
[1] => gapiReportEntry Object
(
[metrics] => Array
(
[goal1Completions] => 32
[goal2Completions] => 27
)
[dimensions] => Array
(
[hour] => 00
[date] => 20131113
)
)
)
答案 0 :(得分:-1)
通过使用此函数将gapiReportEntry对象转换为数组来修复它。
function objectToArray( $object ) {
if( !is_object( $object ) && !is_array( $object ) ) {
return $object;
}
if( is_object( $object ) ) {
$object = (array) $object;
}
return array_map( 'objectToArray', $object );
}