如何使用 Google Analytics Data API (GA4) php 客户端库使用 FULL_REGEXP 按维度进行过滤?

问题描述 投票:0回答:2

我尝试向此请求添加正则表达式过滤器,但我没有找到使用过滤器的示例文档:Filter\StringFilter\MatchType::FULL_REGEXP。

我没有错误,但也没有结果。我哪里做错了? 在这里,我尝试获取主机名是站点且 pageReferrer 以 https:// 开头的结果。

    $request = $client->runReport([
                'property' => 'properties/' . $property_id,
                'dateRanges' => [
                    new DateRange([
                        'start_date' => "$dateStart",
                        'end_date' => "$dateEnd",
                    ]),
                ],
                'dimensions' => [
                  new Dimension(['name' => 'hostName']),
                  new Dimension(['name' => 'pageReferrer']),
                ],
      
                'metrics' => [
                  new Metric(['name' => 'sessions']),
                ],

                 'dimensionFilter' => new FilterExpression([
                  'and_group' => new FilterExpressionList([
                      'expressions' => [
                          new FilterExpression([
                              'filter' => new Filter([
                                  'field_name' => 'hostName',
                                  'string_filter' => new Filter\StringFilter([
                                      'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
                                      **'value' => 'hostName==www.site.com',**
                                  ])
                              ]),
                          ]),
                          new FilterExpression([
                              'filter' => new Filter([
                                  'field_name' => 'pageReferrer',
                                  'string_filter' => new Filter\StringFilter([
                                      'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
                                      **'value' => 'pageReferrer!~^https:\/\/*',**
                                  ])
                              ]),
                          ]),
                      ]
                  ]),
                ]),
              ]);

我仍然链接了我找到的有关此 API 的文档和示例:

php google-analytics google-analytics-api google-api-php-client google-analytics-4
2个回答
2
投票

这是我的第一篇文章,所以请原谅格式错误。

我同意另一位发帖者的评论“GA4 文档中显然缺乏示例。”可笑的是,GA4 Data API v1 尚未准备好用于商业用途,这与 Google 于 7 月 1 日停止通用分析的承诺完全背道而驰。他们的文档中缺乏示例可能是最令人震惊的差距。

Soapbox 收起......当您指定 FULL_REGEXP 时,“value”键旨在保存正则表达式,而不是正则表达式评估。因此,您的过滤器定义将是:

new FilterExpression([
                              'filter' => new Filter([
                                  'field_name' => 'hostName',
                                  'string_filter' => new Filter\StringFilter([
                                      'match_type' => Filter\StringFilter\MatchType::FULL_REGEXP,
                                      'value' => 'www\.site\.com',
                                  ])
                              ]),
                          ]),

0
投票

GA4 文档中明显缺乏示例。

尝试转义第一个过滤器中的符号。 也许 PARTIAL_REGEXP 可以帮助测试。

© www.soinside.com 2019 - 2024. All rights reserved.