Veröffentlicht 10. Juni 200520 j Nabend zusammen, Ich schildere am besten mal, was ich vor habe. Ich brauche ein PHP-Script, das alle HTML-Files in einem Verzeichnis liest, in der Datei nach einer bestimmten Zeichenfolge sucht, diese Ersetzt und die Datei dann unter einem anderem Namen abspeichert. Wo soll es zum Einsatz kommen : Ich brauche dieses Script um IDN-Domains umzuwandeln. Das ganze werde ich dann in einen Webalizer einbinden. Mal als Beispiel : in der quell.html steht ... <a href="www.google.de">www.google.de</a> <a href="xn--reifen-gnstiger-6vb.de/">http://xn--reifen-gnstiger-6vb.de/</a> ... Das Script soll nun die unformatierten Umlaut-Domains umkonvertieren und die Datei anschließen z.B. als fertig.html speichern. Das Konvertieren ist kein Problem, gibts ja ne Funktion für.
10. Juni 200520 j So auf die Schnelle, und da ich gerade ein wenig Langeweile hatte: $srcDir = "/tmp/"; $srcDir = realpath($srcDir); $hDir = opendir($srcDir); while ($hFile = readdir($hDir)) { if(is_File($hFile) && $hFile != "." && $hFile!= "..") && preg_match("/.+\.html$/is",$hFile,$pregRes)) { $fContArr = file($srcDir."/".$hFile); if ($fp = open($srcDir."/".$hFile,"w")) { foreach ($fContArr as $key=>$line) { //Mache was auch immer Du willst mit $line //TODO// fwrite($fp,$line."\n"); } fclose($fp); } } } Lässt sich bestimmt noch optimieren, und damit Du auch noch was zu tun hast, darfst Du jetzt die Parse-Errors beheben, da trocken gecoded :-P Und gegebenenfalls musst Du noch die Newline-Chars so anpassen, wie Du sie gerne hättest beim fwrite()...
13. Juni 200520 j Autor Ja, diesen Lösungsansatz hatte ich bereits, aber trotzdem danke Das Problem ist nur, das von diesen IDN-Domains, ca. 100 in dem HTML-File vorkommen. Daher brauche ich eine Lösung, die sagen wir mal folgendes tut : Suche Pattern "xn--" (Die 1. Fundstelle wäre <a href="xn--blubbblbb-7nb.de">...) Ersetze diese Zeichenkette bis zum " (Nächste Fundstelle wäre <a ...>xn--blubbblbb-7nb.de</a> Ersetze diese Zeichenkette bis zum nächsten < Ich hoffe das ich es einigemaßen verständlich erklärt hab
13. Juni 200520 j Ich würde hiermit ansetzen: http://de3.php.net/manual/en/function.preg-replace-callback.php Gruß, Markus
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.