Handy one for all sorts of reasons, just don’t use it for evil : \. I also did an online working version of this function. It takes a string and returns an array of unique emails parsed out.
function parseEmailsFromString($text, $unique = true) {
$mails=array();
preg_match_all('/[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*(\\.[_A-Za-z0-9-]+)/', $text, $result);
for ($i = 0; $i < count($result[0]); $i++) {
if($unique){
if(!in_array($result[0][$i], $mails)) $mails[] = $result[0][$i];
}else{
$mails[] = $result[0][$i];
}
}
return $mails;
}