Официальные документы - хорошее место для начала - http://php.net/manual/en/language.exceptions.php.
Если это просто сообщение, которое вы хотите перехватить, вы должны сделать это следующим образом:
try{
throw new Exception("This is your error message");
}catch(Exception $e){
print $e->getMessage();
}
Если выхотите зафиксировать конкретные ошибки, которые вы бы использовали:
try{
throw new SQLException("SQL error message");
}catch(SQLException $e){
print "SQL Error: ".$e->getMessage();
}catch(Exception $e){
print "Error: ".$e->getMessage();
}
Для записи - вам нужно определить SQLException
.Это можно сделать так:
class SQLException extends Exception{
}
Для заголовка и сообщения вы можете расширить класс Exception
:
class CustomException extends Exception{
protected $title;
public function __construct($title, $message, $code = 0, Exception $previous = null) {
$this->title = $title;
parent::__construct($message, $code, $previous);
}
public function getTitle(){
return $this->title;
}
}
Вы можете вызвать это используя:
try{
throw new CustomException("My Title", "My error message");
}catch(CustomException $e){
print $e->getTitle()."<br />".$e->getMessage();
}