getDimesions()
...谷歌发生了类型错误.LOL
在名称中使用冒号的数组面临一些问题,
我的$结果包含
gapiReportEntry::__set_state(array(
'metrics' =>
array (
'uniquePageviews' => 1523,
),
'dimensions' =>
array (
'pagePath' => '/',
'pageTitle' => 'Eventyrgolf',
'source' => 'google',
'medium' => 'organic',
'campaign' => '(not set)',
),
))
gapiReportEntry::__set_state(array(
'metrics' =>
array (
'uniquePageviews' => 210,
),
'dimensions' =>
array (
'pagePath' => '/dk/greenfee-og-banen-8/',
'pageTitle' => 'Greenfee og Banen',
'source' => 'google',
'medium' => 'organic',
'campaign' => '(not set)',
), )) 但有些我怎么不能得到“维度:私人”......该怎么办?
我试过print_r():
$result->{"dimensions:private"}
$result['dimensions:private']
$result->dimensions
完整代码:
$ga->requestReportData($profileId, $dimensions, $metrics, $sort, null, $fromDate, $toDate, 2, 30);
foreach ($ga->getResults() as $result) {
print_r($result->dimensions);
}
答案 0 :(得分:0)
dimensions
对象的$result
属性是私有的。这意味着它只能由同一类的对象访问。
检查您的gapiReportEntry
类是否包含所谓的getter,这是一个可以访问属性dimensions
并将其值返回给您的方法。寻找像getDimensions
这样的东西。
在此处详细了解课程字段可见性http://pl1.php.net/manual/en/language.oop5.visibility.php
修改强>
如果您的gapiReportEntry
是google analitics报告,则this docs表示存在getDimensions()方法,因此只需调用
$result->getDimensions();
编辑#2
正如评论中所建议的那样,该类似乎有拼写错误的方法名称。实际方法名为getDim**es**ions
:
$result->getDimesions();
答案 1 :(得分:0)
您的$result
不是数组,而是对象。如果你var_dump
一个对象,你会看到它的内容,在你的情况下,它是一个包含2个私有变量metrics
和dimensions
的对象。要访问它们,该对象可能有一些访问器:
$result->getMetrics();
$result->getDimensions();
答案 2 :(得分:-1)
Private是PHP中的保留关键字,你应该在它之前使用反斜杠来删除冒号“:”。