A captura de erros na linguagem PHP é feito utilizando o bloco try-catch que
pode ser visto na sintaxe abaixo:
Sintaxe
try
{
//código que será testado
}
catch( tipo_excecao $variavel_erro )
{
//código para tratamento de erro
}
Onde
try: possui um corpo de código que será executado
tipo_excecao: tipo de dado da exceção lançada, nativa ou do criada pelo usuário
$variavel_erro: nome do objeto que irá armazenar os dados do erro ocorrido
catch: possui um corpo de código que será executado caso algum erro ocorra em try
Quando esse bloco try-catch é utilizado, as declarações dentro do corpo do bloco try são executadas.
Caso algum erro ocorra na execução, uma Exceção(Exception) é gerada e o fluxo de
execução é desviado para o bloco catch que deve realizar os tratamentos.
O bloco catch é "alimentado" por um objeto, $variavel_erro, que contem as informações sobre
a exceção ocorrida como mensagem, linha do erro, stacktrace e outros.
A linguagem PHP, além das diversas exceções nativas, permite a criação
de exceções customizadas com atributos e métodos próprios.
Exemplo 1
<?php
try
{
$var = 10/0; //divisão por zero
}
catch(DivisionByZeroError $ex)
{
echo "ocorreu um erro";
}
Saída
ocorreu um erro