如何让“回归”工作?

时间:2014-02-19 19:01:11

标签: php email-validation

我有这段代码来验证输入中输入的电子邮件。保存后,任何有效的电子邮件地址都会消失。起初,我认为这是周围的'if'语句,所以我删除了它。这是我现在的代码:

$email = 'bouboule-mimi@hotmail.com';

if( filter_var( $email,FILTER_VALIDATE_EMAIL ) === false )
{
    $email = 'Email is not valid';
}

return $email;

测试之后,我发现返回语句不起作用,我不知道为什么或如何解决它。那么为什么不“回归”呢?

如果您转到here并粘贴代码,您就会明白我的意思。

2 个答案:

答案 0 :(得分:1)

返回通常不用于结构化编码(逐步编码样式),其内部函数用于返回函数的结果并终止函数的执行。所以你可以像这样使用它:

function validate_email( $email ) {
    if( empty( $email ) ) {
        return false;
    } elseif( filter_var( $email,FILTER_VALIDATE_EMAIL ) === false ) {
        return false;
    } else { 
        return true;
    }
}

现在:

$email = 'bouboule-mimi@hotmail.com';
if(!validate_email($email)){
    echo 'Email is not valid';
}

答案 1 :(得分:0)

当您必须从用户定义的函数返回某些内容时,请使用return。没有功能你不能使用它。在其周围放置功能标签以使return起作用。那么你当然必须调用这个函数。

function check_email() {
  $email = 'bouboule-mimi@hotmail.com';
  if( filter_var( $email,FILTER_VALIDATE_EMAIL ) === false ) {
      $email = 'Email is not valid';
  }
  return $email;
}
echo check_email();