Php 从Google API报告对象获取日期范围?
我使用的是v4版本的ReportingAPI,有一个函数可以生成我想要的报告。我面临的唯一问题是找到一种从另一个函数中报告日期的方法Php 从Google API报告对象获取日期范围?,php,google-api,google-reporting-api,Php,Google Api,Google Reporting Api,我使用的是v4版本的ReportingAPI,有一个函数可以生成我想要的报告。我面临的唯一问题是找到一种从另一个函数中报告日期的方法 function getReport($analytics, $start_date, $end_date) { // Replace with your view ID, for example XXXX. $VIEW_ID = "XXXXXXX"; // Create the Date
function getReport($analytics, $start_date, $end_date) {
// Replace with your view ID, for example XXXX.
$VIEW_ID = "XXXXXXX";
// Create the DateRange object.
$dateRange = new Google_Service_AnalyticsReporting_DateRange();
$dateRange->setStartDate("$start_date");
$dateRange->setEndDate("$end_date");
// Create the Metrics object.
$transactionRevenue = new Google_Service_AnalyticsReporting_Metric();
$transactionRevenue->setExpression("ga:transactionRevenue");
$transactionRevenue->setAlias("Revenue");
$transID = new Google_Service_AnalyticsReporting_Dimension();
$transID->setName('ga:transactionId');
$campaign = new Google_Service_AnalyticsReporting_Dimension();
$campaign->setName('ga:campaign');
$date = new Google_Service_AnalyticsReporting_Dimension();
$date->setName('ga:date');
$camFil = new Google_Service_AnalyticsReporting_DimensionFilter();
$camFil->setDimensionName('ga:campaign');
$camFil->setExpressions(array('.*[^0-9].*'));
$camFil->setOperator('REGEXP');
$dimensionFilterClause = new Google_Service_AnalyticsReporting_DimensionFilterClause();
$dimensionFilterClause->setOperator('AND');
$dimensionFilterClause->setFilters(array($camFil));
// Create the ReportRequest object.
$request = new Google_Service_AnalyticsReporting_ReportRequest();
$request->setViewId($VIEW_ID);
$request->setDateRanges($dateRange);
$request->setMetrics(array($transactionRevenue));
$request->setDimensions(array($date, $transID, $campaign, $medium, $source));
$request->setSamplingLevel('LARGE');
$request->setDimensionFilterClauses($dimensionFilterClause);
$request->setPageSize(10000);
$body = new Google_Service_AnalyticsReporting_GetReportsRequest();
$body->setReportRequests( array($request) );
return $analytics->reports->batchGet( $body );
}
此时,我再次传递开始日期和结束日期,以便在对结果进行采样时可以细分日期范围。传递日期的问题是,每当我想向getReport传递一个新参数时,下面的函数就必须更改
getFullResults( $analytics, $start_date, $end_date );
还有人使用GA Reporting API并查看是否将日期存储在结果中?我唯一发现的是最小值和最大值,但不确定使用它的格式
["minimums"]=>
array(1) {
[0]=>
array(1) {
["values"]=>
array(1) {
[0]=>
string(3) "0.0"
}
}
}
["maximums"]=>
array(1) {
[0]=>
array(1) {
["values"]=>
array(1) {
[0]=>
string(8) "48780.59"
}
}
}
您正在使用这个API吗?是的,就是那个,通读了一遍,在文档中找不到答案。