Эта тема на forum.dklab.ru


Agat: timestamp 288 отрезков времени (5 минутные интервалы) и 1 запрос в mysql
Добрый ночер.
Подскажите алгоритм.

Как? Cделав 1ин запрос к mysql и выбрав все данные за текущий день, по полю `unix_secs`(timestamp)
Распределить на 5 минутные интервалы сложив значения из соседнего поля `doctets` в полученном интервале.
Обратив внимание на IPшник. `srcaddr`, `dstaddr` (источники складываются отдельно, а назначения отдельно).
Вернуть 1ин массив, под return. Где бы было 576 ключей, начало интервала в timestamp и сумма doctets в этом интервале.


Начало кода такое

function report_statip($DATABASE){
$statip = $DATABASE -> query('SELECT `unix_secs`,`srcaddr`, `dstaddr`, `doctets`
FROM `users_detail_traffic`
WHERE `unix_secs` >= ? AND (`srcaddr`=? OR `dstaddr`=?)
ORDER BY `users_detail_traffic`.`unix_secs` ASC',
$this->get_date(), $this->ip, $this->ip); // $this->get_date() с начала дня. $this->ip IPшник источник/назначение в данном случае он 10.8.1.3
if(empty($statip)) { return false; }

foreach ($statip as $key => $stat){
if ($stat['srcaddr']==$this->ip){
for ($i=0;$i<=288;$i++){
$range=array();
//$range[$i]= ПОЛНЫЙ СТУПОР Видимо нужно долго пить чай
}
}else{
//сюда рученки еще не дотянулись
}
}
echo $stat['unix_secs']." * ".$stat['doctets']." * ".$stat['dstaddr']." * ".$stat['srcaddr']."<br>";
}



выдох echo такой (небольшая часть)


1428699619 * 141 * 10.8.1.3 * 149.154.167.51
1428699619 * 177 * 149.154.167.51 * 10.8.1.3
1428699669 * 133 * 10.8.1.3 * 64.233.162.188
1428699669 * 135 * 64.233.162.188 * 10.8.1.3
1428699694 * 8291 * 10.8.1.3 * 10.8.1.1
1428699774 * 25658 * 10.8.1.1 * 10.8.1.3
1428699804 * 141 * 10.8.1.3 * 149.154.167.51
1428699804 * 177 * 149.154.167.51 * 10.8.1.3
1428699849 * 8898 * 10.8.1.3 * 10.8.1.1
1428699989 * 141 * 10.8.1.3 * 149.154.167.51
1428699989 * 177 * 149.154.167.51 * 10.8.1.3
1428700004 * 8346 * 10.8.1.3 * 10.8.1.1



Извините, если отвлекаю от более важных дел.
Agat:
Разобрался, нужно было выспатся.

Вопрос решен, тему можно закрыть.

Эта тема на forum.dklab.ru