Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php5] Exception i bloki try/catch, i jak wykorzystać throw (jak obsłużyć błędy których nie przewidzimy)
jastu
post
Post #1





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

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


Sama obsługa błędów jest dla mnie (jeśli dobrze rozumiem) jasna , problem polega na wykorzystaniu tej obsługi .

Są pliki z klasami - pliki php - pliki php wykorzystują klasy i wysyłają dane do szablonów ....

Generuję wyjątek w klasie np.DBusing bo nie można się połączyć.... ale w pliku php w kolejnej lini wysyłam zapytanie i dostaję kolejny wyjątek...hm...

Można dać to w blok try ale wtedy mam jeszcze większy bałagan z wyjątkami (jeśli powstała by tablica wyjątków to pierwszy pociągnął by za sobą kolejne a nie tak to być powinno ).

Jak pisać obługę błędów ?

Ten post edytował jastu 27.11.2006, 20:03:31
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
jastu
post
Post #2





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

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


tzn że w klasie nie budujemy wyjątków ? ewentualnie możemy robić IF`y sprawdzając ? ? ?

btw . jeśli mamy konstrukcję
  1. <?php
  2. try{
  3.  // polecenie 1
  4. try{
  5. // polecenie 2
  6. // polecenie 3
  7. }
  8. catch(Exc pol2){}
  9. catch(Exc pol3){}
  10. catch(Exc){}
  11. // polecenie 4
  12. }
  13. catch(Exc pol1){}
  14. catch(Exc pol4){}
  15. catch(Exc){}
  16. ?>


Jeśli dobrze rozumiem bład w 2 bloku try wygeneruje wyjątek ale plecenie 4 się wykona - co zrobić jeśli polecenie 4 korzysta z wyników operacji w poleceniu 2 i 3 , dać do jednego bloku 2 ,3 i 4 ?


//edit
polecenie numer 4 wygeneruje wyjątek ... a co z wyjątkami w klasach ? nie korzystamy ?

btw. co zrobić by w każdym pliku nie korzystac z funkcji set_error(exception)_handler() ?

Ten post edytował jastu 27.11.2006, 15:33:39
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: 11.10.2025 - 11:59