'; echo '
  • ' . strtoupper($extension) . ':
  • '; foreach ($files[$extension] as $file) { echo '
  • '; echo ''; foreach ($file['parts'] as $part) { $i++; if (!isset($colors[$i])) $colors[$i] = $defaultColor; echo '/' . $part . ''; } $entries = ''; foreach ($file['entries'] as $entry) $entries .= '
    ' . htmlentities($entry) . '
    '; echo ' (countEntries = ' . $file['count'] . ', countLinesInFile = ' . $file['lines'] . ' )
  • '; $i = 0; } echo ''; } } function getLinesWithString($file, $str) { $entries = array(); foreach ($file as $lineNumber => $line) { $lineNumber++; if (strpos($line, $str) !== false) { $entries[] = $lineNumber . ' :: ' . $line; } } return $entries; } if ($search): $objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator(dirname(__file__)), RecursiveIteratorIterator::SELF_FIRST); foreach ($objects as $path => $object) { $info = pathinfo($path); $basename = $info['basename']; $extension = $info['extension']; if ($basename != BASE_NAME && in_array($extension, $extensions)) { $source = file_get_contents($path); $file = file($path); if (strpos($source, $search) !== false) { $_path = str_replace($_SERVER["DOCUMENT_ROOT"], '', $path); $entries = getLinesWithString($file, $search); $countLines = count($file); $countEntries = substr_count($source, $search); $parts = explode('/', trim($_path, '/')); $files[$extension][] = array( 'count' => $countEntries, 'parts' => $parts, 'path' => $path, 'lines' => $countLines, 'entries' => $entries); } } } foreach ($extensions as $extension) printOutput($extension); endif; ?>
    FRANKIE MAKERS :: Hunter - Substring hunting