![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Witajcie. A ja jak zwykle z głupim pytanie do was przychodzę
![]() Obecnie obsługa błędów w moim FW sprowadza się do wywołania metody statycznej trigger() klasy Event, która to przekazuje nazwę błędu ( identyfikator ) i parametry którymi są zazwyczaj informacje dodatkowe o błędzie do handlera. Właśnie przetestowałem sobie inny sposób... znany od zarania dziejów. Czyli throw new Exception połączone z plikiem ErrorListener.php w którym mam
Dobra ale gdzie tutaj pytanie. Otóż wywołań Event::trigger(ERR_...) mam około stu ![]() i zwyczajnie zastanawiam się czy się opłaca to zmieniać. Jedynym problemem który stwarza mi obecna koncepcja, jest związany ze zmianami we frameworku. Każdy bzdurny błąd który jest wynikiem zmian w FW, powoduje nie tyle nie uruchomienie domyślnej obsługi błędów, co najczęście produkcję czystej białej strony bez czegokolwiek... Z kolei inny problem stanowi dla mnie nowe rozwiązanie gdyż niektóre błędy są na zasadzie E_NOTICE czyli nie powinny zabijać dalszego parsowania strony. Niestety użycie wyjątków bez bloku try/catch spowoduje to. Jeśli da się to w jakiś sposób obejść to poświęcę te 2 dni na przepisanie obsługi błędów. Za wszelkie pomysłu, uwagi czy krytykę mojej daleko idącej głupoty będę bezgranicznie wdzięczny ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 654 Pomógł: 17 Dołączył: 19.03.2006 Skąd: z kosmosu ;) Ostrzeżenie: (0%) ![]() ![]() |
Mmm... no to przebuduj ErrorHandler, tak aby omijał NOTICE...
Jeden problem z głowy, z pierwszym troche nie kumam o co Ci chodzi, za dużo wywołań? Pozdrawiam, WebNuLL(Babcia@Stefa) -------------------- Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian ![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Chodzi o to że obecnie mam Adapter w postaci klasy Event.
Powoduje to sypanie się w różny sposób całości kiedy zrobię jakiś niewielki błąd modyfikując Framework. A teraz wyjaśnij mi jak to on ma omijać notice bo nie rozumiem ? Ja mam w konfiguracji błędów oprócz opisu błędu informację czy jest on krytyczny. Jeśli jest no to die() jeśli nie jest to kontynuuj. Ale przekazanie obsługi wyjątku do handlera spowoduje zatrzymanie wykonywania skryptu. Więc nie będę mógł kontrolować czy błąd jest krytyczny czy nie. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 11:25 |