PHP 5.6.24 is released


(PHP 5 >= 5.1.0, PHP 7)


Exception é a classe base para todas Exceptions no PHP 5, e a classe base de todas as exceções de usuário no PHP 7.

No PHP 7, a classe Exception implementa a interface Throwable.

Sinopse da classe

Exception {
/* Propriedades */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
/* Métodos */
public __construct ([ string $message = NULL [, int $code [, Throwable $previous = NULL ]]] )
final public string getMessage ( void )
final public Exception getPrevious ( void )
final public mixed getCode ( void )
final public string getFile ( void )
final public string getLine ( void )
final public array getTrace ( void )
final public string getTraceAsString ( void )
public string __toString ( void )
final private string __clone ( void )



A mensagem da exceção


O código da exceção


O nome do arquivo onde a exceção foi criada


A linha onde a exceção foi criada


add a note add a note

User Contributed Notes 2 notes

1 year ago
Note that an exception's properties are populated when the exception is *created*, not when it is thrown.  Throwing the exception does not seem to modify them.

Among other things, this means:

* The exception will blame the line that created it, not the line that threw it.

* Unlike in some other languages, rethrowing an exception doesn't muck up the trace.

* A thrown exception and an unthrown one look basically identical.  On my machine, the only visible difference is that a thrown exception has an `xdebug_message` property while an unthrown one doesn't.  Of course, if you don't have xdebug installed, you won't even get that.
altieresdelsent at gmail dot com
3 years ago
when you are using xdebug, exceptions message will never be shown if you use any encoding different than UTF-8, so if you are using any database with translated messages like oracle, you should ALWAYS, always, throw a exception like this

throw new Exception(utf8_encode($message),$code), character like ã,é,ç, will make the exception message fail to be shown, if you are not using xdebug ( I do think you should at least try), this code will not affect your page.
To Top