Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przyjemne zwracanie błędów, przyjemne dla programisty ...
jastu
post
Post #1





Grupa: Zarejestrowani
Postów: 382
Pomógł: 0
Dołączył: 29.11.2005
Skąd: :jestem();

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


Opiszę problem przykładem :
klasa obsługi dla bazy danych wykonuje zapytanie które zwraca błąd, ale klasa obsługi wyniku zapytania do bazy musi odpowiednio zareagować na ten błąd po czym w elegancki sposób przekazać informację o błedzie do klasy modelu lub akcji (który też podejmie odpowiednią akcję na błąd).

Jak mogę w ładny i zgrabny sposób sprawdzać wyniki operacji ( jesli ma być zwrócone true / false to nie jest problem ) ? Problem polega na tym że wynik operacji musi przjść przez klika klas i za każdym razem każda kolejna klasa oczekuje innego typu danych.
pzdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
kicaj
post
Post #2





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Zainteresuj sie klasa Exception...
  1. <?php
  2. try
  3. {
  4.  // uruchamia aplikacje
  5. }
  6. catch( Exceptions $e )
  7. {
  8. echo $e -> getError();
  9. }
  10.  
  11. // model
  12. if( warunki )
  13. {
  14. // ...
  15. }
  16. else // niepowodzenie!
  17. {
  18. throw new Exceptions( 'Komentarz' );
  19. }
  20.  
  21. // klasa Exceptions
  22. class Exceptions extends Exception
  23. { 
  24. // ...
  25.  
  26. public function getError()
  27. {
  28. // pobiera szablon bledu
  29. // zwraca blad
  30.  }
  31. }
  32. ?>
Go to the top of the page
+Quote Post
jastu
post
Post #3





Grupa: Zarejestrowani
Postów: 382
Pomógł: 0
Dołączył: 29.11.2005
Skąd: :jestem();

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


Ok ... same wyjątki są dla mnie zrozumiałe choć nie używam ich często, moje obecne utrapienie polega na stworzeniu ładnej obsługi / kontroli błędów bez wykorzystania wyjątków (mowa o php4).
Kiedyś pisząc aplikację napisałem to tak że każda funkcja / metoda zwracała tablicę z dwoma elementami - wyniki operacji jako pierwszy element tablicy, a jako drugi element resource do zasobów lub tablica z rekordami...na dłuższą metę stawało się to uciążliwe (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Ten post edytował jastu 7.05.2007, 09:59:54
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


Cytat
moje obecne utrapienie polega na stworzeniu ładnej obsługi / kontroli błędów bez wykorzystania wyjątków (mowa o php4)

Sie nie da.

Cytat
Kiedyś pisząc aplikację napisałem to tak że każda funkcja / metoda zwracała tablicę z dwoma elementami - wyniki operacji jako pierwszy element tablicy, a jako drugi element resource do zasobów lub tablica z rekordami...na dłuższą metę stawało się to uciążliwe


Uzyj PHP 5
Go to the top of the page
+Quote Post

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: 23.08.2025 - 15:11