global $num_ar;
global $file_ar;
global $size;
function sortt(){
global $num_ar;
global $file_ar;
global $size;
for($i=0;$i<$size-1;$i++)
for ($j=0;$j<$size-1;$j++)
if($num_ar[$i]>$num_ar[$i+1]){
$num_ar[$i+1]=$num_ar[$i];
$file_ar[$i+1]=$file_ar[$i];
}
for($i=0;$i<$size;$i++){
print "Найдено $num_ar[$i] вхождений
";
print "$file_ar[$i]
";
}
}
function show_all ($pmdir, $f, $ff){
global $num_ar;
global $file_ar;
global $size;
$dir=opendir($pmdir);
$flag=$f;
$find=$ff;
$word_flag=0;
if(!$find){exit;}
//print $flag;
//print $find;
while($file=readdir($dir))
{
if ( $file!="."&&$file!="..")
{
if (is_dir($pmdir."/".$file))
{
show_all($pmdir."/".$file,$flag, $find);
}
else
{
//print $file;
//print "$pmdir
" ;
//print $file;
if(ereg("\.htm(l)?$",$file)){
$fp=fopen($pmdir."/".$file,"r") or die ("File ($file) does not exist!");
$num=0;
while(!feof($fp))
{
$line=fgets($fp,4096);
// print $line;
if ($flag==1)
{
$num+=preg_match_all($find,$line,$number);
}
else
{
$num+=preg_match_all($find,$line,$number);
}
}
if($num!=0)
{
$file_ar[]="$pmdir/$file";
$num_ar[]=$num;
$size++;
}
else {
if ($word_flag!=1)
$word_flag=2;
}
fclose($fp);
}
}}}
}
print "
Введите выражение для поиска
"; $form=""; print $form; if ($_GET["mode"]==("p")&&$_POST["check"]==("reg")){ $flag=1; $find=$_POST["search"]; $find="/".$find."/i"; show_all(".",0,$find); sortt(); } else{ if ($_GET["mode"]==("p")) {$flag=0; $find=$_POST["search"]; $find="/".$find."/"; show_all(".",1,$find); sortt(); } } ?>