这是一个毫无意义的检查吗?

时间:2017-01-10 12:30:14

标签: php validation

正在检查电子邮件是否填写无意义意味着我有一个功能可以检查@& .?这会减慢速度还是没有害处?

表单PHP

$email = $_POST['email'];       

if (empty($email)) {
    $email_error = "Your email can not be blank!";
} else if (email_filter($email) == false) {
    $email_error = "Please enter a valid email address!";
} //Add email check here! (sql query)

电子邮件功能

function email_filter($str) {
    if (preg_match('/(?=.*[@.])/', $str)) {
        return true;
    }
    return false;
}

1 个答案:

答案 0 :(得分:1)

这不会让你失望。与服务网页时发生的所有其他处理相比,额外的处理时间可以忽略不计。

我喜欢依赖语言来检查以防万一有什么变化或正则表达式出错:

这是w3schools的一个很好的例子

<?php
$email = "john.doe@example.com";

if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
  echo("$email is a valid email address");
} else {
  echo("$email is not a valid email address");
}
?>