php.net

(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

6

thisbug at foxmail dot com

6 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();

Read the original on php.net ↗