マイscript_a.php
を投げていなかった場合にのみコードを実行:問題はClass2::tryThat()
が例外を投げることができるということです例外の取り扱い、および例外が
public function tryThis() {
Class2::tryThat();
self::logSuccessfulEvent();
}
:
try {
Class1::tryThis();
}
catch (Exception $e) {
// Do stuff here to show the user an error occurred
}
Class1::tryThis()
のようなものを持っています。
例外をスローすると、self::logSuccessfulEvent();
という行がまだ実行されているようです。
self::logSuccessfulEvent()
は唯一の例外がスローされた、まだ同時に例外ががスローされたときscript_a.php
が知らせていないときに発生するように、私はこのコードをリファクタリングすることができますどのように?
問題は別のところです – miki
"それはそうです"? 'tryThat'が未処理の例外を投げた場合、' tryThis'( 'self :: logSuccessfulEvent()')**の次の行は実行されません。** – webbiedave
@webbiedaveとOP:あなたは間違いなしです。次の行は走れず、私が気づいていなかったところで事前に実行されていました。したがって、PHPの例外は私が期待したとおりに動作します。現在のコードブロックで例外をスローするステートメントの後にコードは実行されません。 – eoinoc