我突然得到一个致命的错误。我不明白

时间:2017-05-22 21:10:56

标签: php

我一直在使用以前工作的代码。然而,突然间,这条消息突然出现了。

  

致命错误:未捕获的异常'异常',消息'电子邮件不正确!'在C:\ xampp \ htdocs \ Prototype \ classes \ User.php:23

     

堆栈跟踪:#0 C:\ xampp \ htdocs \ Prototype \ index.php(14):用户 - > setEmail(true)#1 {main}抛出C:\ xampp \ htdocs \ Prototype \ classes \第23行的User.php

但我只是不明白这意味着什么。我尝试使用try和catch,但它一直在弹出。

这是发生错误的代码

public function setEmail($p_email)
{
    if (empty($p_email)) {
        throw new Exception('Email kan niet leeg zijn!');
    }
    $this->email = $p_email;
    if (!filter_var($p_email, FILTER_VALIDATE_EMAIL)) {
        throw new Exception('Email is incorrect!'); //here is the error (line 23)
    }
}

这是召唤它的代码

$user = new User();
$user->setEmail($_SESSION['login']); //line 14
$currentUser = $user->getProfile();
$userEmail = $user->getEmail();
$userName = $user->getUserName();
$userID = $currentUser['userID'];

1 个答案:

答案 0 :(得分:0)

您的错误是您传递了boolean而不是有效的string电子邮件...

  

堆栈跟踪:#0 C:\ xampp \ htdocs \ Prototype \ index.php(14):用户 - > setEmail( true )#1 {main}在C:\ xampp中抛出第23行\ htdocs \ Prototype \ classes \ User.php

所以,这一行不正确:

$user->setEmail($_SESSION['login']); //line 14