Warunkowe try/catch, Wygodny sposób omijania obswługi błędów |
Warunkowe try/catch, Wygodny sposób omijania obswługi błędów |
14.01.2023, 21:18:39
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 14.01.2023 Ostrzeżenie: (0%) |
Problem jest następujący:
Kod dla użytkownika musi zawierać "ładną" obsługę błędów, co powoduje, że kluczowe operacje bazodanowe, komunikacyjne itd, są ujęte w blokach try/catch. Fajnie. Ale takie ich ujęcie powoduje, że jak już jakiś błąd wystąpi, developer nie ma łatwego życia - pierwsze, co na ogół musi zrobić, to zakomentować try/catch, żeby zobaczyć prawdziwe źródło błędu w stacku zapisanym w logu. W związku z tym pytanie - czy ktoś zna jakiś wygodny sposób nadania blokowi try/catch cech warunkowości? Mam na myśli coś w rodzaju (pseudokod): tryIf ( DEBUG_FLAG === false ) { $this->zupa(); } catch (\Exception $e) { echo $e->getMessage(); } finally { $this->kupa(); } Wynik działania takiej konstrukcji powinien być dokładnie takie sam jak standardowego bloku try/catch, jeśli stała DEBUG_FLAG ma wartość false, lecz jeśli stała ta ma wartości true, to wykonane zostałyby wywołane funkcje: $this->zupa(); oraz $this->kupa(); natomiast cała logika obsługi ewentualnego błędu zostałaby pominięta. Szukałem jakichś publikacji, które poruszałyby podobne zagadnienie, lecz nie udało mi się takowych znaleźć. Ktoś, coś...? Pozdrawiam, Ziggi |
|
|
15.01.2023, 11:59:44
Post
#2
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 70 Dołączył: 15.07.2014 Ostrzeżenie: (0%) |
Nie ma takiej możliwości. Kod z bloku `try` musi się odpalić, żeby mogło w ogóle zadziałać `catch` - złapanie błędu.
Opisz co konkretnie chcesz zrobić i co osiągnąć, bo pewnie przekombinowałeś. |
|
|
18.01.2023, 17:08:26
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) |
prosty sposób w bloku catch zrob mechanizm logowania do loga i tyle
Ten post edytował com 18.01.2023, 17:08:41 |
|
|
Wersja Lo-Fi | Aktualny czas: 25.09.2024 - 16:43 |