drwindows97
Goto Top

PHP Zeile eines Textdokumentes bei vorkommen von 2 bestimmten Wörter entfernen

Hallo Administratoren,
ich brauche wieder mal eure Hilfe in PHP.

Diesmal geht es um die Frage wie man eine Zeile aus einem Textdokument, bei vorkommen zweier bestimmter Wörter entfernt.
Mein Ansatz ist bisher dieser:
// Datei festlegen 
$datei = "mclog.txt";   
// Datei als Array einlesen 
$inhalt = file($datei) or die("Datei konnten icht geöffnet werden.");   

Dake für eure Hilfe.

Content-ID: 205383

Url: https://administrator.de/contentid/205383

Ausgedruckt am: 16.11.2024 um 16:11 Uhr

dog
dog 21.04.2013 um 22:46:30 Uhr
Goto Top
Mein Ansatz ist bisher dieser:

...und dann fehlen dir noch zwei strpos, eine foreach-Schleife, ein Ausgabe-Buffer und ein file_put_contents.
colinardo
colinardo 22.04.2013 aktualisiert um 18:20:11 Uhr
Goto Top
Hi DRwindows97,
mit Regex ist das schnell gelöst; gib deine zwei Wörter in Zeile 3 und 4 ein.
Wenn diese Wörter zusammen in einer Zeile gefunden werden wird diese nicht mit übernommen.
$datei = "mclog.txt";  
$inhalt = file($datei) or die("Datei konnten icht geöffnet werden.");  
$wort1 = "DeinWort1";  
$wort2 = "DeinWort2";  
$newlog = "";  
foreach ($inhalt as $line){
        if (!preg_match("/\A.*$wort1.*$wort2.*\Z/i", $line)) {  
		$newlog .= $line;
	}
}
file_put_contents($datei,$newlog);

Grüße Uwe
DRwindows97
DRwindows97 22.04.2013 aktualisiert um 15:30:52 Uhr
Goto Top
Vielen Dank für eure Hilfe.