![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Pisząc swój własny framework już kilka razy spotykałem się z przekazywaniem dużej ilość argumentów do metod różnych klas. Zaimplementowanie wygodnego sposobu specjalnego problemu mi nie stwarzało. Do czasu. Obecnie zaprojektowana metoda klasy modelu artykułów, która ma za zadanie pobierać je z bazy, ma w założeniu ich całkiem pokaźną ilość. Chciałbym żeby argumenty do niej przekazywane były w taki sposób aby ktoś komu przykładowo zlecę jakąś modyfikację nie miał problemu ze zrozumieniem konfiguracji zachowania tej metody. Więc tutaj powstaje pytanie. Jak przekazać parametry. Dotychczas rozważyłem napisanie klasy która by składowała tą konfigurację. Uznałem rozwiązanie za w miarę dobre gdyż byłoby ono bardzo elastyczne. Pomysł odpadł jednak względu na dużą dozę skomplikowania. Podrzućcie mi proszę jakieś pomysły. Pozdrawiam. Ten post edytował orglee 17.09.2008, 19:11:57 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
1) Jeżeli metoda ma tylko pare parametrów obowiązkowych to najlepiej zapodać je jako pierwsze a reszte nieobowiązkowych jako ostatnie parametry z domyslnymi wartosciami.
2) Jeżeli metoda ma bardzo dużo parametrów lepiej składować je w jednej tablicy albo w zmiennych obiektu. np Kod //20 parametrow
$obj->par1=0; $obj->par2=0; $obj->par3=0; itd.. $obj->metoda(); -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Niestety metoda nie ma w ogóle opcjonalnych parametrów.
Ehh chyba w takim razie pozostaje mi obiekt. |
|
|
![]()
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%) ![]() ![]() |
Dzizez, a na co ci tyle parametrow? Mozesz je pokazac?
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
SQL LIMIT 2 parametry
Daty od / do 2 parametry Identyfikator(y) 1 parametr Fraz(a/y) w tytule / treści 2 parametry Według kategorii 1 parametr Według autora 1 parametr I co z rozbudową jeśli zajdzie potrzeba dodania kolejnej możliwości filtrowania. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 191 Pomógł: 5 Dołączył: 13.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- "Don't tell me you want a bridge - show me the canyon you want to cross" Giuseppe Delena
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Uzyj sposobu @wookieb, ja podobnie buduje kryteria wyszukiwania obiektow i sprawdza sie bardzo dobze, i moze byc dowolnie rozbudowane.
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Tak właśnie zrobię tylko dodam do klasy składującej settery i gettery.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 03:51 |