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; } } }