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-Key: 205383

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

Printed on: April 20, 2024 at 02:04 o'clock

Member: dog
dog Apr 21, 2013 at 20:46:30 (UTC)
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.
Member: colinardo
colinardo Apr 22, 2013 updated at 16:20:11 (UTC)
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
Member: DRwindows97
DRwindows97 Apr 22, 2013 updated at 13:30:52 (UTC)
Goto Top
Vielen Dank für eure Hilfe.