我的问题是引用使用ReportQueryBuilder
构建查询的代码部分。我如何在此处设置自定义日期:
$query = (new ReportQueryBuilder())
->select([
'CampaignId',
'AdGroupId',
'Id',
'Criteria',
'CriteriaType',
'Impressions',
'Clicks',
'Cost'
])
->from(ReportDefinitionReportType::CRITERIA_PERFORMANCE_REPORT)
->where('Status')->in(['ENABLED', 'PAUSED'])
->duringDateRange(ReportDefinitionDateRangeType::LAST_7_DAYS)
->build();
搜索了如何继续之后,我发现有必要将duringDateRange
行更改为:
->duringDateRange(ReportDefinitionDateRangeType::CUSTOM_DATE)
但是我应该把实际的日期范围放在哪里,以什么格式显示?
注意-我正在使用AdWords API v201809库。请没有以前的版本解决方案。
答案 0 :(得分:1)
不幸的是,php v201809库的实现有所不同。要解决此问题,请将duringDateRange(ReportDefinitionDateRangeType::LAST_7_DAYS)
调用替换为during($startDate, $endDate)
您的函数将如下所示:
$startDate = date('Ymd', strtotime('2 days ago'));
$endDate = date('Ymd', strtotime('3 days ago'));
$query = (new ReportQueryBuilder())
->select([
'CampaignId',
'AdGroupId',
'Id',
'Criteria',
'CriteriaType',
'Impressions',
'Clicks',
'Cost'
])
->from(ReportDefinitionReportType::CRITERIA_PERFORMANCE_REPORT)
->where('Status')->in(['ENABLED', 'PAUSED'])
->during($startDate, $endDate)
->build();