Example #1
0
 public static function printQueryLevelCat($query, $level = 2, $max = false, $printScore = true)
 {
     DedupQuery::addQuery($query);
     DedupQuery::matchQueries(array($query));
     $cats = DedupQuery::getCategories($query);
     // Determine the score of the secondary level cats from the scores of the bottom level
     $sLevelCats = array();
     foreach ($cats as $cat) {
         $cTree = self::getCategoryTree('Category:' . $cat['cat']);
         //print_r($cTree[1]);
         $cTreeLen = sizeof($cTree);
         if ($cTreeLen >= $level + 1) {
             if ($cTree[0] != 'Category:WikiHow') {
                 $sLevelCats[$cTree[$level]] += $cat['score'];
             }
         }
     }
     arsort($sLevelCats);
     $numPrinted = 0;
     foreach ($sLevelCats as $cat => $score) {
         print str_replace('Category:', '', $cat) . "\t";
         if ($printScore) {
             print $score . "\t";
         }
         $numPrinted++;
         if ($max && $numPrinted >= $max) {
             break;
         }
     }
 }