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
(PHP 7, PHP 8)
Throwable ist das zugrundeliegende Interface aller
Objekte, die mittels des throw
-Statements geworfen werden können,
inklusive Error und
Exception.
Hinweis:
PHP-Klassen können das Interface Throwable nicht direkt implementieren und müssen stattdessen von Exception abgeleitet werden.
Version | Beschreibung |
---|---|
8.0.0 | Throwable implementiert nun Stringable. |
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
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();