- <?php
- /*****************************************************************************
- * Fonction get_email_addrs() : prototype et exemple
- * Copyright © Dean
- *
- * Contact : -
- *
- *****************************************************************************/
-
- /*
- * Prototype de fonction :
- *
- * array get_email_addrs(string string)
- * Retourne les adresses e-mail de string dans un tableau indexé
- */
- function get_email_addrs($string)
- {
- // Crée le tableau de destination
- $email_list = array();
-
- // Obtient les adresses contenues dans la chaîne
- while(eregi("[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+", $string, $regs))
- {
- // Ajoute l'adresse trouvée à l'index suivant du tableau de sortie
- $email_list[] = $regs[0];
-
- // Supprime l'adresse de la chaîne
- $string = str_replace($regs[0], "", $string);
- }
-
- // Plus d'adresses ? Retourne la liste
- return array_keys(array_flip($email_list));
- }
-
- /*
- * Exemple d'utilisation :
- */
-
- // Définit la chaîne à analyser
- $string = 'Cette chaîne contient une adresse ici : user@provider.com';
- $string .= ' et une autre là : client@website.net.';
-
- // Extrait les adresses e-mail de cette chaîne
- $email_list = get_email_addrs($string);
-
- // Affiche la chaîne
- echo 'Chaîne de base : "'.$string.'".<br /><br />';
-
- // Affiche les adresses :
- echo 'Adresses trouvées avec get_email_addrs() :<br />';
- for($i=0; $i<count($email_list); $i++)
- {
- echo '<a href="mailto:'.$email_list[$i].'" title="'.$email_list[$i].'">'.$email_list[$i].'</a><br />';
- }
- ?>
<?php
/*****************************************************************************
* Fonction get_email_addrs() : prototype et exemple
* Copyright © Dean
*
* Contact : -
*
*****************************************************************************/
/*
* Prototype de fonction :
*
* array get_email_addrs(string string)
* Retourne les adresses e-mail de string dans un tableau indexé
*/
function get_email_addrs($string)
{
// Crée le tableau de destination
$email_list = array();
// Obtient les adresses contenues dans la chaîne
while(eregi("[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+", $string, $regs))
{
// Ajoute l'adresse trouvée à l'index suivant du tableau de sortie
$email_list[] = $regs[0];
// Supprime l'adresse de la chaîne
$string = str_replace($regs[0], "", $string);
}
// Plus d'adresses ? Retourne la liste
return array_keys(array_flip($email_list));
}
/*
* Exemple d'utilisation :
*/
// Définit la chaîne à analyser
$string = 'Cette chaîne contient une adresse ici : user@provider.com';
$string .= ' et une autre là : client@website.net.';
// Extrait les adresses e-mail de cette chaîne
$email_list = get_email_addrs($string);
// Affiche la chaîne
echo 'Chaîne de base : "'.$string.'".<br /><br />';
// Affiche les adresses :
echo 'Adresses trouvées avec get_email_addrs() :<br />';
for($i=0; $i<count($email_list); $i++)
{
echo '<a href="mailto:'.$email_list[$i].'" title="'.$email_list[$i].'">'.$email_list[$i].'</a><br />';
}
?>