Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zwracane wartości, jakieś koncepcje?, dosc pilne, wiec jesli mozna prosic...
kidu
post 5.03.2005, 21:34:28
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 26.02.2005

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


czesc wszystkim

Sytuacja wyglada tak: porzebuje napisac klase do obslugi uzytkownikow (cos a'la model w MVC). Mam w klasie metode GetUsersList() pobierajaca liste uzytkownikow. Jako interfejs polaczenia z baza uzywam ADOdb, mozliwe za 3 przypadki

- gdy jest przynajmniej jeden wiersz w wyniku
- gdy nie ma wierszy w wyniku
- gdy wystapil blad w czasie operacji

I nie bardzo wiem w jaki sposob elegancko zwracac odpowiednie dane. Robie to tak, ale to chyba nie najlepsze wyjscie:
  1. <?php
  2.  
  3. $sql = 'SELECT * FROM users';
  4. $set = $this->db->Execute($sql);
  5. if($set != FALSE && $set->RecordCount() > 0)
  6. {
  7. $vars = array();
  8. while(!$set->EOF)
  9. {
  10. $vars[] = $set->fields;
  11. $set->MoveNext();
  12. }
  13. return $vars;
  14. }
  15. else if($set != FALSE && $set->RecordCount() == 0)
  16. {
  17. return -1;
  18. }
  19. else
  20. {
  21. return NULL;
  22. }
  23.  
  24. ?>


Chcialbym wyraznie moc za pomoca zwroconej wartosci rozroznic ktory przypadek mial miejsce (bez sprawdzania dodatkowych warunkow). Macie na to jakies rozwiazania? Jakie i jak zwracac wartości w 2 pozostalych przypadkach, bo gdy sa wiersze w wyniku to zwracam poprostu tablice rekordow.

Z gory wielkie dzieki
Go to the top of the page
+Quote Post
rogrog
post 6.03.2005, 09:00:21
Post #2





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


no jak nie masz wierszy w wyniku to możesz zwracać pustą tablicę albo null, a jak wystąpił błąd to false


--------------------
Go to the top of the page
+Quote Post
kidu
post 6.03.2005, 16:29:45
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 26.02.2005

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


moze i masz racje, i wtedy jesli sie nei myle do zidentyfikowania zwroconej wartosci na zewnatrz trzeba uzyc nie == tylko ===, czy tak?
Go to the top of the page
+Quote Post
rogrog
post 6.03.2005, 18:10:55
Post #4





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


dokładnie tak. bo zarówno 0, null jak i false przy porówaniu są konwertowane i == da true. === porównuje typy


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 27.06.2025 - 08:17