<?php/* Takes one file as a filter and N files as filtered. Excludes whatever lines are in the filter from the filtered and echoes everything to outX.txt */$files = array();switch($argv[1]) { case NULL: case "-h": echo "Syntax: php excluder.php [filter filtered[filteredN]|-h]\n"; die(); break; default: if($argc > 1) { unset($argv[0]); $files = array_values($argv); } else { $error = 2; } break;}foreach($files as $file) { if(!file_exists($file)) { $error = 1; }}switch($error) { case 1: die("FATAL: One or more of the files you specified do not exist\n"); break; case 2: die("FATAL: You didn't specify at least one file to process\n"); break; default: echo date("[Y-m-d h:i:s]")." Everything OK. Starting check...\n"; break;}$filecounter = 1;while(!$out) { if (!file_exists("out".$filecounter.".txt")) { $out = fopen("out".$filecounter.".txt", "a"); } else { $filecounter++; }}$filter = fopen($files[0], "r");while(!feof($filter)) { $filterlines[str_replace("\n", "", fgets($filter))] = "Y";}fclose($filter);unset($files[0]);$files = array_values($files);foreach($files as $file) { $inprocess = fopen($file, "r"); while(!feof($inprocess)) { $line = fgets($inprocess); if(!isset($filterlines[str_replace("\n", "", $line)])) { fwrite($out, str_replace("\n", "", $line)."\n"); } } fclose($inprocess); echo date("[Y-m-d h:i:s]")." Finished file ".$file."\n";}?>