PHP clase PDOException
Representa un error generado por la extensión PDO.
class PDOException extends RuntimeException { /* Propiedades */ public array $errorInfo; protected string $code; /* Propiedades heredadas */ protected string $message = ""; private string $string = ""; protected int $code; protected string $file = ""; protected int $line; private array $trace = []; private ?Throwable $previous = null; /* Métodos heredados */ final public Exception::getMessage(): string final public Exception::getPrevious(): ?Throwable final public Exception::getCode(): int final public Exception::getFile(): string final public Exception::getLine(): int final public Exception::getTrace(): array final public Exception::getTraceAsString(): string public Exception::__toString(): string private Exception::__clone(): void }
Propiedades
https://blastcoding.com/php-clase-pdoexception/#propiedades$errorInfo
– Corresponde a PDO::errorInfo() o PDOStatement::errorInfo()
$code
– Código de error de SQLSTATE. Puedes utilizar el método getCode para acceder a su valor.
Propiedades heredadas de RuntimeException
$message
– El mensaje de la excepción
$code
– El código de la excepción
$file
– El nombre del fichero donde se originó la excepción
$line
– La línea donde ocurrió el error
$previous
– La excepción lanzada previamente
$trace
– El seguimiento de la pila como array
Métodos
https://blastcoding.com/php-clase-pdoexception/#metodosLos metodos que posee la clase PDOException son heredados de RuntimeException y son los siguientes:
getMessage
https://blastcoding.com/php-clase-pdoexception/#getMessageObtiene el mensaje de excepción en caso de que al estar usando la extensión PDO obtengamos un error o fallo. Este método devuelve el mensaje asociado con la excepción PDO que se ha lanzado.
Description / Descripciónfinal public Exception::getMessage(): stringgetMessage example:
try { $dsn = 'mysql:host=localhost;dbname=nombre_basedatos'; $usuario = 'usuario'; $contrasena = 'contraseña'; $conexion = new PDO($dsn, $usuario, $contrasena); // Aquí podrías realizar operaciones con la base de datos } catch (PDOException $e) { // En caso de error, capturamos la excepción y mostramos el mensaje echo "Error de conexión: " . $e->getMessage(); }
Retorno
string – El retorno será una cadena de caracteres, el error que hemos obtenido de la operación anterior utilizando PDO
getPrevious
https://blastcoding.com/php-clase-pdoexception/#getPreviousDevuelve la Throwable anterior(interfaz)
Description / Descripciónfinal public Exception::getPrevious(): ?Throwable
getCode
https://blastcoding.com/php-clase-pdoexception/#getCodeObtiene el código de una excepción
Description / Descripciónfinal public Exception::getCode(): int
getFile
https://blastcoding.com/php-clase-pdoexception/#getFileObtiene el lugar en donde se creó la excepción
Description / Descripciónfinal public Exception::getFile(): string
getLine
https://blastcoding.com/php-clase-pdoexception/#getLineObtiene la línea en el que se creó la excepción
Description / Descripciónfinal public Exception::getLine(): int
Concepto de stack trace en Excepciones
El stack trace de una excepción, también conocido como seguimiento de la pila, es un registro que muestra la secuencia de llamadas a funciones que se ejecutaron hasta el momento en que se produjo la excepción. Es una herramienta fundamental para la depuración de errores en software.
getTrace
https://blastcoding.com/php-clase-pdoexception/#getTraceConseguiremos el stack trace en forma de array
Description / Descripciónfinal public Exception::getTrace(): array
Retorno
Este array devuelto sería un array de arrays que poseen la información como puede ser la funcion, archivo, línea, argumentos, etc.
getTraceAsString
https://blastcoding.com/php-clase-pdoexception/#getTraceAsStringobtiene el stack trace en forma de string
Description / Descripciónfinal public Exception::getTraceAsString(): string