Hey,
sicher eine einfache Sache, für die die es wissen..
Ich suche eine Möglichkeit wie ich aus einer Textdatei doppelte Einträge, in diesem Fall eMail Adressen, per Script löschen kann. Die mails stehen alle in einer Zeile und sind durch Komma getrennt, z.B.:
mail@1.de,mail@2.de,mail@3.de,mail@4.de,
Nun wie kann ich doppelte Einträge löschen so das immer nur eine mail von den doppelt oder dreifach genannten übrig bleibt, z.B.:
mail@1.de,mail@2.de,mail@2.de,mail@3.de,mail@3.de, mail@3.de,
Soll ersetzt werden durch:
mail@1.de,mail@2.de,mail@3.de,
Ich hatte zwar schon was ähnliches im Netz gefunden, aber das hilft mir auch nicht viel weiter, es gibt nur eine echo""; und keine löschfunktion und die einzelnen mails müssten jede einzelne in einer zeile stehen. Setz ich mal nur als evtl. Denkanstoß rein.
Hoffe das das jemand liest und mir helfen kann.
Gruß,
Robman
sicher eine einfache Sache, für die die es wissen..
Ich suche eine Möglichkeit wie ich aus einer Textdatei doppelte Einträge, in diesem Fall eMail Adressen, per Script löschen kann. Die mails stehen alle in einer Zeile und sind durch Komma getrennt, z.B.:
mail@1.de,mail@2.de,mail@3.de,mail@4.de,
Nun wie kann ich doppelte Einträge löschen so das immer nur eine mail von den doppelt oder dreifach genannten übrig bleibt, z.B.:
mail@1.de,mail@2.de,mail@2.de,mail@3.de,mail@3.de, mail@3.de,
Soll ersetzt werden durch:
mail@1.de,mail@2.de,mail@3.de,
Ich hatte zwar schon was ähnliches im Netz gefunden, aber das hilft mir auch nicht viel weiter, es gibt nur eine echo""; und keine löschfunktion und die einzelnen mails müssten jede einzelne in einer zeile stehen. Setz ich mal nur als evtl. Denkanstoß rein.
Code:
<?php $datei = "textdatei.txt"; $fgs = file($datei); $fgs = array_map('trim', $fgs); // (PHP 4 >= 4.0.6) // Zeilenumbrüche in allen Elementen entfernen $fgs = array_unique($fgs); // (PHP 4 >= 4.0.1) // Duplikate entfernen /** und Daten wieder wegschreiben. Zeilenmbrüche nicht vergessen */ foreach($fgs as $line) { // zum Testen erstmal nur echo-Ausgabe echo $line, "\n"; } ?>
Gruß,
Robman
Kommentar