我一直在使用以前工作的代码。然而,突然间,这条消息突然出现了。
致命错误:未捕获的异常'异常',消息'电子邮件不正确!'在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'];
答案 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