API отчета API не хронологический

Я использую этот код в своем объекте, чтобы получить данные API Google Analytics

$this->end_date = date('Y-m-d', strtotime('-1 days'));
$this->start_date = date('Y-m-d', strtotime('-27 days', strtotime($this->end_date)));

$this->ga->requestReportData(xxxx,array('date'), array('sessions'), null, '', $this->start_date, $this->end_date);

foreach($this->ga->getResults() as $result) {
$this->date = $result->getDate();
$this->visits = $result->getSessions();

$this->date = strtotime($this->date);
$this->date = date("d-m-Y", $this->date);
$i++;

$this->dateArray .= "{date: '". $this->date ."', visits: ". $this->visits . $i ."},";

}

$this->dateArray =  substr($this->dateArray, 0, -1);

По какой-то причине некоторые даты не в порядке, что я делаю неправильно или это нормально, и есть ли другой тип исправления для этого?

Это мой вывод для $ this-> ga-> getResults ()

Array ( [20180117] => 0 [20180118] => 0 [20180119] => 0 [20180120] => 0 [20180121] => 0 [20180122] => 0 [20180124] => 0 [20180125] => 0 [20180127] => 0 [20180128] => 0 [20180129] => 0 [20180131] => 0 [20180202] => 0 [20180204] => 0 [20180207] => 0 [20180208] => 0 [20180209] => 0 [20180210] => 0 [20180212] => 0 [20180126] => 1 [20180201] => 1 [20180203] => 1 [20180205] => 1 [20180211] => 1 [20180123] => 3 [20180206] => 5 [20180213] => 5 [20180130] => 31 )

1

Решение

API отчетов Google Analytics не гарантирует сортировку результатов, если вы не используете sort оператор.

Попробуйте добавить sort=ga:date на ваш запрос, и это должно работать.

Либо напишите свой код, чтобы предположить, что данные не отсортированы, и выполняйте сортировку самостоятельно.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]