| |
");
echo(" ");
echo("");
echo("");
if(empty($q)) {
echo("Nincs megadva keresendő szöveg!
");
}
else {
echo("A keresett szöveg: $q
");
echo("");
$dir=".";
$files=fajl_lista($dir);
keres($files,$q);
$q2=konvert($q);
if($q2!=$q) keres($files,$q2);
echo(" ");
}
function konvert($q) {
$ekezet=array("á" => "á", "é" => "é", "í" => "í", "ó" => "ó", "ú" => "ú",
"ö" => "ö", "õ" => "ő", "ô" => "ő", "ô" => "ő", "õ" => "ő",
"ü" => "ü", "û" => "ű", "ũ" => "ű", "û" => "ű",
"Á" => "Á", "É" => "É", "Í" => "Í", "Ó" => "Ó", "Ú" => "Ú",
"Ö" => "Ö", "Õ" => "Ő", "Ô" => "Ő", "Õ" => "Ő", "Ô" => "Ő",
"Ü" => "Ü", "Û" => "Ű", "Ũ" => "Ű", "Û" => "Ű");
foreach($ekezet as $k => $v) {
$q=str_replace($k,$v,$q);
}
return $q;
}
function konvert2($q) {
$ekezet2=array("á" => "á", "é" => "é", "í" => "í", "ó" => "ó", "ú" => "ú",
"ö" => "ö", "ő" => "õ", "ô" => "õ", "õ" => "õ",
"ü" => "ü", "ű" => "û", "ũ" => "û", "û" => "û",
"Á" => "Á", "É" => "É", "Í" => "Í", "Ó" => "Ó", "Ú" => "Ú",
"Ö" => "Ö", "Ő" => "Õ", "Õ" => "Õ", "Ô" => "Õ",
"Ü" => "Ü", "Ű" => "Û", "Ũ" => "Û", "Û" => "Û");
foreach($ekezet2 as $k => $v) {
$q=str_replace($k,$v,$q);
}
return $q;
}
function fajl_lista($dir) {
//echo("DIR: ".$dir." \n");
$handle=opendir($dir);
$files=array();
while(false !== ($val=readdir($handle))) {
if(!empty($val) && $val!="." && $val!="..") {
if(is_dir($dir."//".$val)) {
$sub_files=fajl_lista($dir."//".$val);
$files = array_merge($files,$sub_files);
}
else {
if(substr($val,-4)==".htm" || substr($val,-5)==".html") {
//echo($dir."//".$val." \n");
$files[] = $dir."//".$val;
}
}
}
}
closedir($handle);
return $files;
}
function fajl_tisztit($fajl) {
$fajl=str_replace("\n"," ", $fajl);
$fajl=str_replace("\r"," ", $fajl);
$fajl=preg_replace("/<\?.+\?>/"," ", $fajl);
$fajl=preg_replace("//"," ", $fajl);
$fajl=preg_replace("//"," ", $fajl);
$fajl=preg_replace("/.+<\/title>/"," ", $fajl);
$fajl=preg_replace("/<[^<>]+>/"," ", $fajl);
$fajl=preg_replace("/ +/"," ", $fajl);
return $fajl;
}
function keres($files,$q) {
foreach($files as $filename) {
$fajl= konvert2(fajl_tisztit(implode("",file($filename))));
$filename=str_replace("//","/", $filename);
$pos=stripos($fajl, $q);
if($pos!==false) {
//echo("");
$end_pos=$pos+strlen($q);
$right=substr($fajl,$end_pos);
for($i=0;$i<30;$i++) {
$new_pos=strpos($right," ");
if(false!==$new_pos) {
$end_pos+=$new_pos+1;
$right=substr($fajl,$end_pos);
}
}
$start_pos=$pos;
//echo("start_pos: $start_pos ");
$left=substr($fajl,0,$start_pos);
for($i=0;$i<10;$i++) {
//echo("start_pos: $start_pos ");
$new_pos=strrpos($left," ");
//echo("new_pos: $new_pos ");
if(false!==$new_pos && $new_pos!=0) {
$start_pos=$new_pos-1;
$left=substr($fajl,0,$start_pos);
}
else break;
}
//echo(" | ");
echo(" ");
echo(" | $filename | ");
echo(" ");
echo(" ");
echo(" | ...".substr($fajl,$start_pos+2,max($pos-($start_pos+2),0))."");
echo("".substr($fajl,$pos,strlen($q))."");
echo("".substr($fajl,$pos+strlen($q),$end_pos-($pos+strlen($q)))."... | ");
echo(" ");
echo("| | ");
}
}
}
?>
|
| |
|