虽然PHP5提供的异常处理类Exception具备常用的一些功能。但有时候我们希望使用不同的异常类,针对特定类型的异常进行处理,此事就需要自定义异常类。自定义异常类非常简单,只需要继承自Exception类,并添加自定义的成员属性和方法即可。接下来通过一个实例进行学习。
<?php
class CustomException extends Exception
{
public function errorMessage()
{
$errorMsg = 'Error on line '.$this->getLine().'in'.$this->getFile().'<b>'.$this->getMessage().'</b> is not a vaild E-mailaddress';
return $errorMsg;
}
}
$email = "someone@example...com";
try
{
if(filter_var($email,FILTER_VALIDATE_EMAIL)===FALSE)
{
throw new CustomException($email);
}
}
catch(CustomException $e)
{
echo $e->errorMessage();
}
?>
运行结果: