Tratando exceções com PHP |
Categoria: PHP | ||||||
Publicado em 14 de Junho de 2011 | ||||||
As exceções são uma funcionalidade bastante recente no PHP. O formato é o seguinte:
A idéia é que qualquer código que esteja entre o try/catch "lance" exceções que mais tarde deverão ser "capturadas" por um catch qualquer. As exceções são lançadas pela instrução interna "throw new":
As exceções podem ser diferenciadas através da criação de classes que estendam a classe base "Exception":
No exemplo acima, o bloco try/catch realiza tratamento de erros de de 2 tipos: MinhaExcecao e Exception. Se o segundo catch não existisse, o tratamento de erros não ocorreria neste ponto do código. NOTA: é responsabilidade do programador ter um bloco try/catch mais externo que capture todas as exceções que podem ser lançadas. Caso contrário o PHP lançará um erro fatal que parará a aplicação. Caso o programador não queira encapsular todo o script num grande bloco try/catch, ele poderá optar por usar a função set_exception_handler(), informando o nome da função callback que deverá ser chamada para tratar exceções não capturadas. |