diff options
Diffstat (limited to 'search.php')
-rw-r--r-- | search.php | 21 |
1 files changed, 7 insertions, 14 deletions
@@ -1,6 +1,6 @@ <?php -define("VERSION", "2.0.2"); +define("VERSION", "2.1.0"); /** * Load and parse the config file, setting any defaults here if non-required @@ -234,19 +234,12 @@ try { // Really slow search $results = []; - foreach ($content as $upload) { - $match = false; - foreach ($arguments["search"] as $arg) { - if (!is_null($arg) && stripos($upload, $arg) === false) { - $match = false; - break; - } - $match = true; - } - if ($match) { - $results[] = $config["url"] . "/" . rawurlencode($upload); - } + $regex = ""; + foreach ($arguments["search"] as $arg) { + $regex .= "(?=.*" . $arg . ")"; } + $content = preg_grep("/" . $regex . "/i", $content); + $results = $content; if (empty($results)) { output("No results found"); @@ -265,7 +258,7 @@ try { $i++; continue; } - $out[] = $i + 1 . ": " . $result; + $out[] = $i + 1 . ": " . $config["url"] . "/" . rawurlencode($result); $i++; } |