私はすべてのプログラミング言語でException
クラスはThrowable
インターフェイスのインスタンスだと思います。例外がThrowableのインスタンスではないのはなぜですか?
Exception
がPHPのThrowable
のインスタンスではないことを示す次のコードを見てください。
try {
throw new InvalidArgumentException("error message");
} catch (InvalidArgumentException $e) {
if ($e instanceof Exception) {
echo '$e is exception'; // this line gets executed
}
if ($e instanceof Throwable) {
echo '$e is throwable'; // but this one never
}
}
は、それは最後の引数の中でException
クラスのコンストラクタはThrowable
を受け入れ連鎖の例外を除いて問題になります。
PHPバージョン:5.6.23
任意のソリューション?
はい、あります - https://eval.in/785678 – Styphon