20 lines
588 B
Plaintext
20 lines
588 B
Plaintext
![]() |
If you throw a general exception type, such as ErrorException, RuntimeException, or Exception in a library or framework, it forces consumers to catch all exceptions, including unknown exceptions that they do not know how to handle.
|
||
|
|
||
|
Instead, either throw a subtype that already exists in the Standard PHP Library, or create your own type that derives from Exception.
|
||
|
|
||
|
== Noncompliant Code Example
|
||
|
|
||
|
----
|
||
|
throw new Exception(); // Noncompliant
|
||
|
----
|
||
|
|
||
|
== Compliant Solution
|
||
|
|
||
|
----
|
||
|
throw new InvalidArgumentException();
|
||
|
// or
|
||
|
throw new UnexpectedValueException();
|
||
|
----
|
||
|
|
||
|
include::../see.adoc[]
|