Vérifier une adresse e-mail en PHP

Afin de vérifier les e-mails laisser par les visiteurs dans un formulaire, nous utilisons les expressions régulières pour faire le test dont voici un exemple de fonction (CMS Drupal):

<?php
function valid_email_address($mail) {
  $user = '[a-zA-Z0-9_\-\.\+\^!#\$%&*+\/\=\?\`\|\{\}~\']+';
  $domain = '(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.?)+';
  $ipv4 = '[0-9]{1,3}(\.[0-9]{1,3}){3}';
  $ipv6 = '[0-9a-fA-F]{1,4}(\:[0-9a-fA-F]{1,4}){7}';
 
  return preg_match("/^$user@($domain|(\[($ipv4|$ipv6)\]))$/", $mail);
}
?>

Mais depuis la version 5.2.0 de PHP une nouvelle fonction très utile à vue le jour qui offre la possibilité de filtrer des variables, comme pour notre exemple sur les e-mails:

<? filter_var('bob@example.com', FILTER_VALIDATE_EMAIL)); ?>

Cette fonction retourne TRUE-FALSE selon si l'adresse mail est exacte.