1つのtryブロックに対して複数の例外タイプを処理するためのよりクリーンな方法がありますか?以下に示すように、異なるcatchステートメントに対して実行される特定のコードがあります。1つのtryブロックに対して複数の例外タイプを処理する
この関数は、繰り返しtry catchロジックを使用する多くの関数の1つです。何度もこの繰り返しのcatchコードを削除することは可能ですか?
public function add_payment_method(Request $request){
try{
// Try to do some stuff
} catch (\Stripe\Error\RateLimit $e) {
/*
CODE FOR THIS SPECIFIC EXCEPTION
*/
} catch (\Stripe\Error\InvalidRequest $e) {
/*
CODE FOR THIS SPECIFIC EXCEPTION
*/
} catch (\Stripe\Error\Authentication $e) {
/*
CODE FOR THIS SPECIFIC EXCEPTION
*/
} catch (\Stripe\Error\Base $e) {
/*
CODE FOR THIS SPECIFIC EXCEPTION
*/
} catch (\Stripe\Error\ApiConnection $e) {
/*
CODE FOR THIS SPECIFIC EXCEPTION
*/
} catch (\Exception $e) {
/*
CODE FOR GENERIC EXCEPTION
*/
}
}
特定のものの代わりに 'Stripe \ Error \ Base'をキャッチします。 – ShiraNai7