ordiniamo gli indirizzi email delle catene di sant’antonio per uso spam ;)
Beh, ridicolo scrivere apertamente di essere spammoso, infatti non lo sono. Cercavo un modo rapido per creare un file csv con gli indirizzi email trovati in un blocco di testo informe e ho scritto questo pezzo di codice.
-
<?php
-
header("Content-Type: text/plain");
-
//il file manda output in text/plain, non ha senso usare html…
-
$origine=file_get_contents("email.txt");
-
//email.txt è il file, nella stessa directory dello script, che
-
//contiene la massa informe di testo da cui estrarre gli indirizzi.
-
$regexp="/[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/i";
-
//l'espressione regolare di un indirizzo email…
-
$end="";
-
preg_match_all($regexp, $origine, $indirizzi);
-
//troviamo gli indirizzi.
-
-
$unique=array_unique($indirizzi[0]);
-
//eliminiamo i doppioni
-
sort($unique);
-
-
echo count($unique)."\n";
-
//stampiamo il numero di indirizzi trovati…
-
-
while(list(, $indirizzo)=each($unique)){
-
$end .= strtolower($indirizzo) . "\n";
-
}; //la variabile $end contiene tutti gli indirizzi, uno per riga.
-
-
if(file_put_contents("contatti.csv", $end)) {
-
echo "OK, done. look at \"contatti.csv\""; };
-
//scrive $end nel file contatti.csv, che troverai
-
//nella stessa dir dello script
-
?>
Dopo avere eseguito questo script (su sistemi unix basterà scrivere “php nomefile” in terminale, dopo aver commentato la prima riga “header…”) troverai nella sua directory il file contatti.csv che contiene tutti gli indirizzi uno per riga.
Aggiungo: ovviamente la directory deve essere scrivibile dall’utente che esegue lo script da terminale, o da tutti se viene usato via apache.













