Sta*_* dc 6 php google-analytics-4
我正在尝试将 Google Analytics Data API v1 与 PHP 结合使用。我使用 Composer 导入了 google/analytics-data,然后正确设置了整个 API,并且获得了所有包含视图的页面。但我需要使用过滤器根据 URL 过滤结果。
$client = new BetaAnalyticsDataClient();
$response = $client->runReport([
'property' => 'properties/' . $property_id,
'dateRanges' => [
new DateRange([
'start_date' => '2021-01-01',
'end_date' => 'today',
]),
],
'dimensions' => [new Dimension(
[
'name' => 'pagePath',
]
),
],
'metrics' => [new Metric(
[
'name' => 'screenPageViews',
]
)
],
'dimensionFilter' => [new DimensionExpression(
[
'filter' => [new filter(
[
'stringFilter' => [new stringFilter([
'value' => '/orders/',
'match_type' => 'BEGINS_WITH'
]
)]
]
)]
]
)]
]);
Run Code Online (Sandbox Code Playgroud)
但如何添加dimensionFilter?
"dimensionFilter": {
"filter": {
"stringFilter": {
"value": "/orders/",
"matchType": "BEGINS_WITH"
},
"fieldName": "pagePath"
}
}
Run Code Online (Sandbox Code Playgroud)
结果是:
遇到未捕获的异常类型:UnexpectedValueException
消息:无效的消息属性:stringFilter
文件名: ...vendor\google\protobuf\src\Google\Protobuf\Internal\Message.php
小智 12
有用。
'dimensionFilter' => new FilterExpression([
'filter' => new Filter([
'field_name' => 'pagePath',
'string_filter' => new Filter\StringFilter([
'match_type' => Filter\StringFilter\MatchType::BEGINS_WITH,
'value' => '/orders/',
])
])
]),
Run Code Online (Sandbox Code Playgroud)
小智 0
尝试这样的事情:
'dimensionFilter' => new FilterExpression([
'filter' => new Filter([
'field_name' => 'pagePath',
'string_filter' => new StringFilter([
'value' => '/orders/',
'match_type' => 'BEGINS_WITH'
])
])
])
Run Code Online (Sandbox Code Playgroud)