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/249f07b074a0de339d4d1ca980848e6aAnd its output is here:https://3v4l.org/sDMsv
(PHP 7, PHP 8)
Throwable est l'interface de base pour tout objet qui
peut être jeté grâce à la déclaration throw
, ceci inclus
Error et Exception.
Note:
Les classes PHP ne peuvent pas directement implémenter l'interface Throwable, et doivent à la place étendre de Exception.
Version | Description |
---|---|
8.0.0 | La classe Throwable implémente désormais 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/249f07b074a0de339d4d1ca980848e6aAnd 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();