<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>验证电子邮件是否正确</title>
</head>
<body>
<form action="#" method="post">
电子邮件地址: <input type="email" name="mail" />
<input type="submit" value="点击验证" />
</form>
</body>
</html>
<?php
$email = $_POST['mail'];
function CheckEmail($str) {
// $pattern = '/^\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}$/';
//@前面的字符可以是英文字母和._- ,._-不能放在开头和结尾,且不能连续出现
$pattern = '/^[a-z0-9]+([._-][a-z0-9]+)*@([0-9a-z]+\.[a-z]{2,14}(\.[a-z]{2})?)$/i';
if (preg_match($pattern, $str)) {
return true;
} else {
return false;
}
}
//测试验证邮箱函数的功能
$str = $email;
if (CheckEmail($str)) {
echo "<script>alert(\"电子邮箱格式合法!\");</script>";
} else {
echo "<script>alert(\"电子邮箱格式不合法!\");</script>";
}
?>
效果如图:
在输入框中输入自己的邮箱,我输入的是:1476982312@qq.com
弹出如下效果: