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

