Exceptions no PHP5
Exceptions são utilizadas para controlar o fluxo do código de maneira simples. Apesar do nome exceção, não significa que seja um controle de erro absurdo ou fatal e muito menos que o usuário do sistema saiba que ocorreu. Exception não é apenas um controle de erro, isso é apenas uma das funcionalidades. O principal é o controle de fluxo, inclusive, com código muito limpo e orientado.
Vamos compreender o assunto olhando uma maneira antiga:
Esse tipo de tratamento é bem comum na programação sem exceptions em casos que é necessário retornar vários tipos de erros.
Vamos compreender o assunto olhando uma maneira antiga:
<?php /** * Retorna o usuario para login * @param string $user login do usuario * @param string $password senha do usuario * @return User */ function login($user, $password) { // login valido if ($user == 'usuario') { // senha valida if ($password == 'senha') { return new User($user); } else { // senha invalida return -2; } } else { // login invalido return -1; } } // usando a funcao acima $user = login('eu', 'senha'); // tratando o erro if (!is_object($user)) { switch ($user) { case -1: print 'usuario invalido'; break; case -2: print 'senha invalida'; break; } } else { // faz alguma coisa } ?>
Esse tipo de tratamento é bem comum na programação sem exceptions em casos que é necessário retornar vários tipos de erros.
parabéns pelo artigo!!
muito bom e bem explicado...
issu vai ser muito útil para o meu sistema de log de erro
:p
;)
muito bom e bem explicado...
issu vai ser muito útil para o meu sistema de log de erro
:p
;)
17/08/2005 7:19am
(~19 anos atrás)
Por exemplo, o exemplo da página 5 retornou:
Fatal error: Call to undefined function NotExists() in exception.php on line 33
Ah sim, na linha 33: throw NotExists($path);
[]s