phpday 2021 digital edition

Throwable

(PHP 7, PHP 8)

Introducción

Throwable es la interfaz base para cualquier objeto que pueda ser lanzado mediante una sentencia throw en PHP 7, incluyendo Error y Exception.

Nota:

Las clases de PHP no pueden implementar la interfaz Throwable directamente, por lo que deben extender en su lugar Exception.

Sinopsis de la Interfaz

Throwable {
/* Métodos */
abstract public getMessage ( ) : string
abstract public getCode ( ) : int
abstract public getFile ( ) : string
abstract public getLine ( ) : int
abstract public getTrace ( ) : array
abstract public getTraceAsString ( ) : string
abstract public getPrevious ( ) : Throwable
abstract public __toString ( ) : string
}

Tabla de contenidos

add a note add a note

User Contributed Notes 2 notes

up
81
mlocati at gmail dot com
4 years ago
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
up
6
thisbug at foxmail dot com
1 year 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();
To Top