Exakat\Analyzer\Analyzer::getThemeAnalyzers PHP Метод

getThemeAnalyzers() публичный статический Метод

public static getThemeAnalyzers ( $theme = null )
    public static function getThemeAnalyzers($theme = null)
    {
        self::initDocs();
        return Analyzer::$docs->getThemeAnalyzers($theme);
    }

Usage Example

Пример #1
0
 public function generate($folder, $name = null)
 {
     $list = Analyzer::getThemeAnalyzers($this->themesToShow);
     $list = '"' . join('", "', $list) . '"';
     $sqlite = new \Sqlite3($folder . '/dump.sqlite');
     $sqlQuery = 'SELECT * FROM results WHERE analyzer in (' . $list . ')';
     $res = $sqlite->query($sqlQuery);
     $results = array();
     $titleCache = array();
     $severityCache = array();
     while ($row = $res->fetchArray(SQLITE3_ASSOC)) {
         if (!isset($results[$row['file']])) {
             $file = array('errors' => 0, 'warnings' => 0, 'fixable' => 0, 'filename' => $row['file'], 'messages' => array());
             $results[$row['file']] = $file;
         }
         if (!isset($titleCache[$row['analyzer']])) {
             $analyzer = Analyzer::getInstance($row['analyzer']);
             $titleCache[$row['analyzer']] = $analyzer->getDescription()->getName();
             $severityCache[$row['analyzer']] = $analyzer->getSeverity();
         }
         $message = array('type' => 'warning', 'source' => $row['analyzer'], 'severity' => $severityCache[$row['analyzer']], 'fixable' => 'fixable', 'message' => $titleCache[$row['analyzer']]);
         if (!isset($results[$row['file']]['messages'][$row['line']])) {
             $results[$row['file']]['messages'][$row['line']] = array(0 => array());
         }
         $results[$row['file']]['messages'][$row['line']][0][] = $message;
         ++$results[$row['file']]['warnings'];
         $this->count();
     }
     if ($name === null) {
         return json_encode($results);
     } else {
         file_put_contents($folder . '/' . $name . '.' . self::FILE_EXTENSION, json_encode($results));
         return true;
     }
 }
All Usage Examples Of Exakat\Analyzer\Analyzer::getThemeAnalyzers
Analyzer