![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 6.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zastanawiam sie, jak zrobic, aby funkcja w przypadku bledu zwracala wartosc NULL lub FALSE i jednoczesnie komunikat bledu? Cos na styl:
Oczywiscie cos takiego nie dziala, ale mysle, ze dobrze obrazuje to co, chce osiagnac. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
W funkcjach zastosuj sobie jeden parametr który będzie referencją na zmienną z teksem komunikatu
Natomiast pisząc obiektowo masz wyjątki od tego. -------------------- Moja gra - scraby.io
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
I tak bóg stworzył wyjątki (Exceprions)
![]()
@#luq byłeś pierwszy ![]() Ten post edytował krowal 26.09.2009, 21:33:34 -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 6.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Hm, no to ciagle nie to, o co mi chodzi... Moze jakies inne sugestie?
Edit: Jedyne co mi przychodzi do glowy to:
Niestety te rozwiazanie nie jest ani zbyt ambitne, ani zbyt dobre, ani nawet najwygodniejsze... Wiec moze jakies pomysly? Ten post edytował shimano 27.09.2009, 19:54:11 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
A czemu nie możesz użyć do tego wyjątków ?
ps. deklarowanie globali w funkcji ? ![]() -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 589 Pomógł: 91 Dołączył: 22.05.2008 Skąd: Gliwice Ostrzeżenie: (0%) ![]() ![]() |
@krowal dobrze mówi. Chodź użycie wyjątków w kodzie proceduralnym to takie lekkie mieszanie, nie ma w tym nic złego no ale mieszanie to mieszanie
![]() Jeśli takie rozwiązanie Ci się nie podoba to wrzucaj kolejny parametr który będzie referencją na string (ew. tablicę) błędu (błędów) tak jak to pokazałem. Z globalem nie ma co kombinować bo tak jak wyżej napisano nie ma sensu, jest nie eleganckie i takie prostackie. -------------------- Moja gra - scraby.io
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 6.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
No ja powiedzialbym nawet, ze mieszanie to bardzo lekko powiedziane. Polecacie wyjatki, a czy sami ich uzywacie w skomplikowanych kodach, gdzie jest wiele warunkow? Poza tym chyba ta funkcja nie zostala stworzona konkretnie do tego, co potrzebuje wiec smialbym nawet stwierdzic, ze na dluzszy czas stosowanie wyjatkow do tego, co chce osiagnac moze byc niebezpieczne.
Tak wiec wyjatki odpadaja. Bynajmniej w takiej formie, w jakiej obecnie PHP je zawiera. A co do zmiennych globalnych. Pisalem, ze nie jest to dobre wyjscie, ani ladne, ani madre, itp. Ale tez nie jest bardzo bardzo zle, czy smiertelnie niebezpieczne. Zwlaszcza, ze w tym przypadku taka globalna zmienna zawiera tylko string do wyswietlania. Nie ma na niej zadnych innych operacji. Swoja droga to az dziwne, ze chlopaki z PHP nie wprowadzili do tej pory mozliwosci zwrotu "wartosci" wraz z typem true albo false. P.S. Uprzedzajac ewentualna kolejna propozycje... Poza zmiennymi globalnymi jeszcze moznaby zastosowac zwrot tablicy. Owszem, rozwiazanie lepsze od globali. Ale tak samo srednio wygodne. Ten post edytował shimano 28.09.2009, 18:44:39 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 316 Pomógł: 36 Dołączył: 2.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Poza tym chyba ta funkcja nie zostala stworzona konkretnie do tego, co potrzebuje To moim zdaniem źle potrzebujesz ![]() Cytat wiec smialbym nawet stwierdzic, ze na dluzszy czas stosowanie wyjatkow do tego, co chce osiagnac moze byc niebezpieczne. Jakim cudem miałoby to być niebezpieczne? Rzucasz wyjątek - blok kodu zostaje przerwany - skrypt idzie dalej. Cytat Swoja droga to az dziwne, ze chlopaki z PHP nie wprowadzili do tej pory mozliwosci zwrotu "wartosci" wraz z typem true albo false. A znasz jakiś język, w którym coś takiego jest? W sumie to nawet ciężko mi byłoby sobie coś takiego wyobrazić. Tzn. jak według ciebie miałoby to wyglądać? Z resztą kurde - po to są właśnie wyjątki - jak jakiś zostanie wypluty, to albo drukujesz komunikat błędu i przechodzisz dalej, albo w bloku catch drukujesz komunikat błędu i dajesz kod obsługujący taką sytuację... |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Swoja droga to az dziwne, ze chlopaki z PHP nie wprowadzili do tej pory mozliwosci zwrotu "wartosci" wraz z typem true albo false. W ostateczności możesz zrobić tak że funkcja zwraca true albo jakąś wiadomość:
W Twoim przypadku zupełnie wystarczy ![]() Ja jednak nadal upieram się przy wyjątkach, i twoje pytanie czy korzysta się z nich w skomplikowanym kodzie = tak korzysta się, chyba w każdym frameworku masz błędy obsługiwane przez wyjątki. Jeśli będziesz już wiedział jak one działają i jak można je przechwytywać to zobaczysz o co chodzi ![]() -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 29.06.2025 - 09:01 |