Homer J: Frage zum output buffer, Array, Variable

Beitrag lesen

Hallo!

Ich lese Dateien mit fread() ein. Die Inhalte möchte ich abspeichern, dafür fallen mir 3 Möglichkeiten ein.

1. Alle Inhalte in einem Array speichern
2. Alle Inhalte in eine Varibale packen, also der String wird mit jeder Datei erweitert und hat am Ende sehr sehr viele Zeichen
3. Ich packe die Inhalte in den Ausgabepuffer

Später möchte ich die Wörter aller Dateien für einen Vergleich mit einem Suchwort haben. Das Bedeutet, ich nehme die Inhalte aus einer der oben erwähnten Möglichkeiten und zerlege sie in einzelne Worte mit split() z.b., säuber sie von Sonder- und Leerzeichen u.a. und starte dann den Vergleich mit dem Suchwort.

Bisher habe ich das so gemacht:

  
// Doppelte Werte werden aus dem Array entfernt  
$AllWords = array_unique($AllWords);  
  
// Suchwort wird mit "relevanten" Wörtern verglichen  
    foreach($AllWords as $woerter){  
        similar_text ($suchwort,$woerter,$prozent);  
        //Wenn das Suchwort im Vergleichswort enthalten ist  
        //oder die Ähnlichkeit höher als 60% ist, soll das Vergleichswort als Alternative angeboten  werden  
            if($prozent>65.00||preg_match("/".$suchwort."/i",$woerter)){  
            echo "<a class='cnt' href='?cnt=../suche.php&sw=".$woerter."'>".$woerter."</a><br>";  
                }  
            }  
}  

Was aber je nach Menge von Dateien und dem entsprechend vielen Wörtern, sehr lange dauert. Seht ihr hier eine optimierungsmöglichkeit?

Gruß
Homer J