Comando try
A construção try permite tratar exceções que podem ocorrer durante a execução do código.
No bloco try é colocado o código potencialmente perigoso, e no bloco catch - o tratador de exceções.
Também pode ser usado o bloco finally, que é executado em qualquer caso.
Sintaxe
try {
// Código que pode causar uma exceção
} catch (ExceptionType $e) {
// Tratamento da exceção
} finally {
// Código que será executado em qualquer caso
}
Exemplo
Um exemplo simples de tratamento de exceção:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage();
}
?>
Resultado da execução do código:
'Caught exception: Something went wrong'
Exemplo
Exemplo usando o bloco finally:
<?php
try {
echo 'Try block executed';
} finally {
echo ' - Finally block executed';
}
?>
Resultado da execução do código:
'Try block executed - Finally block executed'
Exemplo
Tratamento de diferentes tipos de exceções:
<?php
try {
// Código que pode causar diferentes exceções
throw new InvalidArgumentException('Invalid argument');
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ', $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ', $e->getMessage();
}
?>
Resultado da execução do código:
'Invalid argument: Invalid argument'
Veja também
-
a construção
throw,
que gera uma exceção -
a função
set_exception_handler,
que define um tratador de exceções