Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Błędy w klasach
Babcia@Stefa
post
Post #1





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

Ostrzeżenie: (0%)
-----


Witam, jak lepiej obsługiwać błędy z poziomu klasy?

trigger_error()" title="Zobacz w manualu PHP" target="_manual
Czy wyjątki?
  1. <?php
  2. throw new Exception('Nazwa klasy :: funkcja() : Jakis blad', 1);
  3. ?>


Do tej pory kożystałem z wyjątków, ale coś mnie podkusiło aby się zapytać co do tego trigger_error()" title="Zobacz w manualu PHP" target="_manual (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

@edit
Zastanawiam się nad tym dlaczego iż wyjątki nie są aż takie wygodne...
Gdy ktoś ma error_reporting wyłączony to obsługuje klasę jak zwykłe funkcje z jądra PHP, a przy obsłudze wyjątków trzeba try {} i catch{} za każdym razem stosować przy tworzeniu obiektów.

Dziękuję, Babcia@Stefa

Ten post edytował Babcia@Stefa 27.06.2008, 20:38:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@ Babcia@Stefa
Wyjątki są o wiele wygodniejsze, mimo że musisz umieszczać kod w bloku try{} to umożliwia Ci jednak rozpoznanie co to za błąd i naprawę.
Ale nie można tego robić, że masz jedną klasę wyjątków Exception, tylko każdy typ błędu powinien mieć swoją własną, czasem to będzie tylko zmiana nazwy aby móc zastosować pewną konstrukcję:
  1. <?php
  2. try{
  3. //jakiś kod
  4. }catch ( JakisMalyBlad $e ){
  5. //Obsługa tego błędu
  6. }catch ( JakisPowaznyBlad $e ){
  7. //Obsługa tego błędu, np. wyświetlenie komunikatu użytkownikowi, że coś jest nie t
    ak, 
  8. //a dodatkowo zapisujemy sobie to do logów czy cokolwiek innego.
  9. }//Nie musimy na tym poziomie wyłapywać wszystkich wyjątków, 
  10. //część możemy przepuścić dalej, i te co powodują że nie może działać strona, są o
    bsługiwane przez kontroler.
  11. ?>


No i to co napisałe bim2, możemy rozszerzać własne wyjątki, które dadzą nam takie metody które są nam potrzebne.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.09.2025 - 17:30