- idn_to_ascii: documentation ( source)
- filter_var: documentation ( source)
- str_replace: documentation ( source)
<?php
//$email = 'johnsnow@ヒキワリ.ナットウcom';
//$email = 'ヒキワリ.ナットウ.ニホン';
$email = '192.168.1.1';
$email = idn_to_ascii($email);
$email = str_replace('xn--', '', $email);
$email = str_replace('@-', '@', $email);
echo $email . "\n";
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo 'valid';
} else {
echo 'not valid';
}