一つの例外に対して、条件に応じて複数のメッセージを使うことはできますか?

2017年10月10日
ユーザー

レッスンでは、email 、password それぞれに検証がおこなわれて、エラーメッセージは一種類ずつ返されています。

もし email が空だったら「Please enter email!」とエラーメッセージを表示し、メールアドレスの形式が間違えていたら「Invalid Email!」と表示したい場合に、

if ($_POST['email'] === '') {
    throw new \MyApp\Exception\???;
} elseif (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
    throw new \MyApp\Exception\InvalidEmail();
}

というように、if 文にまとめて処理することが出来るのではないかと考えたのですが、その場合、InvalidEmail.php 内にエラーメッセージをまとめて記述することはできますか?それとも別ファイルを作らなければいけませんか?

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?