Esempio n. 1
0
 private static function getAdditionalDemograficStatistics($mongoData, $fromDate, $toDate)
 {
     $days = (strtotime($toDate) - strtotime($fromDate)) / (60 * 60 * 24) + 1;
     $res = MongoUtils::initDemograficStats();
     for ($i = 0; $i < count($mongoData); $i++) {
         foreach (PseudoStatsModel::$demografics as $demo => $mongoDemoKey) {
             if (isset($mongoData[$i][$demo])) {
                 foreach (PseudoStatsModel::getDemograficsKeys($demo) as $key) {
                     $res['total'][$demo][$key] += $mongoData[$i][$demo][$key];
                 }
             }
         }
     }
     foreach (PseudoStatsModel::$demografics as $demo => $mongoDemoKey) {
         $res['total'][$demo]['all'] = array_sum($res['total'][$demo]);
     }
     // generate age, gender and relationship ratios
     foreach (PseudoStatsModel::$demografics as $demo => $mongoDemoKey) {
         foreach (PseudoStatsModel::getDemograficsKeys($demo) as $key) {
             $res['ratio'][$demo][$key] = 0;
             if ($res['total'][$demo]['all'] != 0) {
                 $res['ratio'][$demo][$key] = round($res['total'][$demo][$key] / $res['total'][$demo]['all'] * 100);
             }
         }
     }
     return $res;
 }