Hallo alle zusammen, ich habe ein Problem, an dem ich sehr zu knabbern habe. Innerhalb der Ausgabe einer Suchmaschine verwende ich 2 foreach-Schleifen:
$zeile=file($datei);
$match=0;
$woerter=explode(" ", $_GET["key"]);
foreach($woerter as $einzelwort) {
foreach($zeile as $detail){
if(substr_count($detail, $einzelwort)==true) {
$match++;
if($match!==0) {
$split_detail=explode("###",$detail);
echo <<<EOT
//Hier steht die Ausgabe
EOT;
}
}
}
}
Wenn ich jetzt 2 Suchwörter eingebe, z.B. abend schlafen und beide Wörter in 2 Einträgen gefunden wurde, erhalte eigentlich ganz logisch wegen der verschachtelten foreach-Schleifen insgesamt 4 Treffer anstatt 2, wobei dich die Einträge wiederholen. Wie kann ich dieses Ausgabeproblem lösen? Gibt es da eine schlaue Methode? Bin für jeden Tipp dankbar, es muss kein Code sein (man will ja lernen)!
Thomas.