I wrote a simple script that prints out the Throwable and Exception tree for every PHP version.
You can find this script here:
https://gist.github.com/mlocati/249f07b074a0de339d4d1ca980848e6a
And its output is here:
https://3v4l.org/sDMsv| CARVIEW |
Select Language
HTTP/2 200
server: myracloud
date: Sun, 28 Dec 2025 05:55:09 GMT
content-type: text/html; charset=utf-8
content-language: en
permissions-policy: interest-cohort=()
x-frame-options: SAMEORIGIN
status: 200 OK
link: ; rel=shorturl
last-modified: Sun, 28 Dec 2025 04:08:13 GMT
vary: accept-encoding
content-encoding: gzip
expires: Sun, 28 Dec 2025 05:55:09 GMT
cache-control: max-age=0
PHP: Throwable - Manual
update page now
Throwable
(PHP 7, PHP 8)
Introduction
Throwable is the base interface for any object that
can be thrown via a throw statement, including
Error and Exception.
Note:
PHP classes cannot implement the Throwable interface directly, and must instead extend Exception.
Interface synopsis
/* Methods */
/* Inherited methods */
}Changelog
| Version | Description |
|---|---|
| 8.0.0 | Throwable implements Stringable now. |
Table of Contents
- Throwable::getMessage — Gets the message
- Throwable::getCode — Gets the exception code
- Throwable::getFile — Gets the file in which the object was created
- Throwable::getLine — Gets the line on which the object was instantiated
- Throwable::getTrace — Gets the stack trace
- Throwable::getTraceAsString — Gets the stack trace as a string
- Throwable::getPrevious — Returns the previous Throwable
- Throwable::__toString — Gets a string representation of the thrown object
+add a note
User Contributed Notes 2 notes
mlocati at gmail dot com ¶
8 years ago
thisbug at foxmail dot com ¶
5 years ago
try {
// Code that may throw an Exception or Error.
} catch (Throwable $t) {
// Executed only in PHP 7, will not match in PHP 5.x
} catch (Exception $e) {
// Executed only in PHP 5.x, will not be reached in PHP 7
}
interface MyPackageThrowable extends Throwable {}
class MyPackageException extends Exception implements MyPackageThrowable {}
throw new MyPackageException();
↑ and ↓ to navigate •
Enter to select •
Esc to close • / to open
Press Enter without
selection to search using Google