PHP / Exception – Manejo de excepciones en PHP
¿que es una excepción?
Es la indicación de que hay un problema al ejecutar una aplicación.
A continuación dejo una cita de lo que es el manejo de excepciones desde wikipedia.
El manejo de excepciones es una técnica de programación que permite al programador controlar los errores ocasionados durante la ejecución de un programa informático .
wikipedia.org
Bueno a fin de cuenta y todo como manejamos una excepción en php.
En PHP podemos lanzar una excepción con la palabra clave throw
y atrapada con catch
.
Para facilitar la captura de la excepción es recomendable poner el codigo donde se puede ejecutar el error dentro de un bloque try el cual debe tener
por lo menos un bloque catch o un finally o los 2 .
Veamos cada uno de estos bloques por separado:
try
: contiene el código que puede tener una posible excepción, este código es ejecutado a menos que lance una excepción.
throw
: con throw podemos lanzar una excepción. Esto quiere decir que no importa si para el código hay una excepción ahí o no para nuestro programa, lo es porque la estamos definiendo como tal.
catch
: como vimos antes el bloque catch es el bloque que captura la excepción, dentro de try podemos tener varios bloques catch de esta manera podemos capturar varias excepciones y hacer algo distinto en consecuencia.
finally
: este bloque es un bloque que se ejecuta si se ha encontrado una excepción o no, también al igual que catch puede haber más de un bloque finally.
Ejemplo con throw
: haremos que lance una excepción a como de lugar.
<?php try{ throw new Exception('una excepcion sin sentido'); }catch(Exception $e){ echo "la excepcion capturada es: ".$e; } ?>
Bien veamos que obtenemos en pantalla
Ejemplo, sin throw, dividamos por 0.
<?php try{ $x =1/0; echo $x; }catch(Exception $e){ echo $e; }finally{ echo "<br/> no debes dividir por 0"; } ?>
En este caso obtenemos la siguiente excepción
Referencia: php.net
- Anterior: Errores en PHP
- Siguiente: Generadores en PHP