Excepciones predefinidas
Ya sabemos que PHP cuenta con una clase base llamada **Exception** de la que podemos heredar sus propiedades y crear nuestras propias excepciones. Además de esa clase base, PHP nos proporciona otras clases predefinidas que podemos usar en nuestra aplicaciones, como son **ErrorException** y un conjunto de excepciones definidas dentro de la SPL (Standard PHP library) como son:
Veamos una aproximación de la definición de la clase ErrorException:
ErrorException extends class Exception
{
/* Propiedad nueva */
protected int $severity ;
/* Propiedades heredadas */
protected $message = 'Unknown exception';
protected $code = 0;
protected $file;
protected $line;
/* Métodos */
public __construct ([ string $message = "" [, int $code = 0
[, int $severity = 1 [, string $filename = __FILE__
[, int $lineno = __LINE__
[, Exception $previous = NULL ]]]]]] )
final public int getSeverity ( void )
/* Métodos heredados */
final function getMessage();
final function getCode();
final function getFile();
final function getLine();
final function getTrace();
final function getTraceAsString();
/* Reemplazable */
function __toString();
}
Es muy buena práctica de programación utilizar estas excepciones ya que son librerías propias del lenguaje. Además podemos crear nuestras propias excepciones que extiendan de ellas si queremos agregar cierta funcionalidad a una de las excepciones creada por nosotros.