Lists of Throwable and Exception tree as of 7.2.0
Error
ArithmeticError
DivisionByZeroError
AssertionError
ParseError
TypeError
ArgumentCountError
Exception
ClosedGeneratorException
DOMException
ErrorException
IntlException
LogicException
BadFunctionCallException
BadMethodCallException
DomainException
InvalidArgumentException
LengthException
OutOfRangeException
PharException
ReflectionException
RuntimeException
OutOfBoundsException
OverflowException
PDOException
RangeException
UnderflowException
UnexpectedValueException
SodiumException
Find the script and output in the following links:
https://gist.github.com/mlocati/249f07b074a0de339d4d1ca980848e6a
https://3v4l.org/sDMsv
posted by someone here https://php.net/manual/en/class.throwable.php
CARVIEW |
Select Language
HTTP/2 200
server: myracloud
date: Mon, 13 Oct 2025 21:23:13 GMT
content-type: text/html; charset=utf-8
content-language: en
permissions-policy: interest-cohort=()
x-frame-options: SAMEORIGIN
link: ; rel=shorturl
last-modified: Mon, 13 Oct 2025 20:08:16 GMT
content-encoding: gzip
vary: accept-encoding
expires: Mon, 13 Oct 2025 21:23:13 GMT
cache-control: max-age=0
PHP: Exception - Manual
Exception
(PHP 5, PHP 7, PHP 8)
Introduction
Exception is the base class for all user exceptions.
Class synopsis
/* Properties */
/* Methods */
}Properties
- message
-
The exception message
- code
-
The exception code
- file
-
The filename where the exception was created
- line
-
The line where the exception was created
- previous
-
The previously thrown exception
- string
-
The string representation of the stack trace
- trace
-
The stack trace as an array
Table of Contents
- Exception::__construct — Construct the exception
- Exception::getMessage — Gets the Exception message
- Exception::getPrevious — Returns previous Throwable
- Exception::getCode — Gets the Exception code
- Exception::getFile — Gets the file in which the exception was created
- Exception::getLine — Gets the line in which the exception was created
- Exception::getTrace — Gets the stack trace
- Exception::getTraceAsString — Gets the stack trace as a string
- Exception::__toString — String representation of the exception
- Exception::__clone — Clone the exception
+add a note
User Contributed Notes 3 notes
whysteepy at gmail dot com ¶
7 years ago
cHao ¶
11 years 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.
shaman_master at list dot ru ¶
5 years ago
Note: this documentation not full, ReflectionObject::export($exception):
<?php
Object of class [ class Exception implements Throwable ] {
- Properties [7] {
Property [ protected $message ]
Property [ private $string ]
Property [ protected $code ]
Property [ protected $file ]
Property [ protected $line ]
Property [ private $trace ]
Property [ private $previous ]
}
- Methods [11] {
Method [ final private method __clone ] {
}
Method [ public method __construct ] {
- Parameters [3] {
Parameter #0 [ $message ]
Parameter #1 [ $code ]
Parameter #2 [ $previous ]
}
}
Method [ public method __wakeup ] {
}
Method [ final public method getMessage ] {
}
Method [ final public method getCode ] {
}
Method [ final public method getFile ] {
}
Method [ final public method getLine ] {
}
Method [ final public method getTrace ] {
}
Method [ final public method getPrevious ] {
}
Method [ final public method getTraceAsString ] {
}
Method [ public method __toString ] {
}
}
}
?>
Missed:
Property [ private $string ]
Property [ private $trace ]
Property [ private $previous ]
Method [ public method __wakeup ] {
}

↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google