O documento discute como tratar erros em PHP usando try, catch e lançando exceções. Ele explica que try testa um bloco de código e catch() captura qualquer exceção lançada, e que exceções personalizadas podem ser criadas estendendo a classe Exception.
2. Por que tratar os erros?
• Para podermos saber quais os erros que
aconteceram e indicar para o sistema quais
ações ele deve tomar;
Bruno Quaresma - SENAI PE
6. Sim mas... Como capturar esse erro?
• Utilizando o try e catch();
Bruno Quaresma - SENAI PE
7. Entendendo um pouco melhor
• O try, ele vai testar um bloco de código e caso
seja lançada alguma exceção durante a
execução desse código o catch() irá tratá-la;
• Assim que uma exceção é lançada dentro do
try o php irá ver se a exceção foi definida em
algum catch();
Bruno Quaresma - SENAI PE
10. Um pouco mais sobre o catch()
• Para que o catch() saiba que erro ele irá tratar
nós passamos como parâmetro a classe da
exceção com a variável que irá receber sua
instância.
Classe
Variável
Bruno Quaresma - SENAI PE
11. A classe Exception
• Essa classe é a classe pai de todas as exceções
no PHP;
• Ela contém quatro métodos básicos:
– getMessage() - Retornar a mensagem de erro.
– getCode() - Retornar o código do erro.
– getFile() - Retorna o caminho do arquivo onde a
exceção foi gerada.
– getLine() - Retorna o número da linha onde a
exceção foi gerada.
Bruno Quaresma - SENAI PE
14. Posso tratar vários erros?
• Claro que SIM!;
• Um try suporta diversas exceções com seus
respectivos catch();
• Mas, de que forma?
Bruno Quaresma - SENAI PE
17. Exercício
• Crie uma classe de conta bancária com os
métodos:
– saque();
– deposito();
• Escreva quais os erros que podem acontecer e
como eles podem ser resolvidos ou tratados;
• Depois, trate devidamente os erros que podem
ser gerados;
• Ao final, tente executar todos os erros que você
listou e verifique se eles foram devidamente
tratados;
Bruno Quaresma - SENAI PE
18. Pesquisa
• Vimos que podemos gerar uma classe
personalizada para o tratamento de erros de
forma bem simples. Para se aprofundar no
assunto você irá pesquisar “Exceções
personalizadas no PHP” para debatermos na
próxima aula.
Bruno Quaresma - SENAI PE