Programowanie obiektowe w PHP

Programowanie obiektowe w PHP
marcinmierzejewski1024
  • Rejestracja:prawie 13 lat
  • Ostatnio:ponad 2 lata
  • Postów:14
0

Mam klase bazową-cecha i podklasy dziedziczace po rodzicu: slider, color, text każda z nich ma swoje pola + pola klasy rodzica i tak musze te obiekty wrzucać do bazy danych i to wydaje mi sie proste- metoda w klasie bazowej, natomiast nie wiem jak je zczytywać jesli każda ma inne pola, czy mam utworzyc konstruktor klasy bazowej? czy może konstruktory w klasach dziedziczacych? czy konstruktor klasy rodzic może na podstawie podanych argumentów przekazywać je do konstruktorów klas potomnych? czy może najlepiej by było w bazie danych dodac kolumne z nazwą klasy i na podstawie tego wywolywać konstruktor podklasy.

KO
  • Rejestracja:około 14 lat
  • Ostatnio:prawie 10 lat
  • Postów:39
1

A te wszystkie obiekty trzymasz w jednej tabeli?
Jest kilka rodzajów trzymania struktur dziedziczenia w tabelach relacyjnych.
Jedną z nich jest trzymanie w jednej tabeli ze wszystkimi kolumnami pól danych klas i jedną kolumną oznaczającą typ (slider, color, text).
Prosty SELECT * wybierze wszystko zarówno dla slidera jak i coloru, tylko niektóre pole będą puste.
Jeżeli boisz się gwiazdki (a wypada się bać gwiazdki) to możesz napisać dla każdej klasy osobną metodę pobierającą.
Albo można napisać jedną generyczną w klasie cecha, parametryzowaną jakąś kolekcją kolumn dla każdej klasy podrzędnej.

marcinmierzejewski1024
Dzięki za odpowiedź, tak właśnie jest trzymam to w jednej tabeli. A gwiazdki mi nie są straszne ale jeżeli faktycznie jest to taki problem to zaczne sie zastanawiać czy na pewno potrzebuje wszystkich kolumn tabeli: ) chyba zrobie to jedną metodą w klasie cecha, a razie pytań zapytam się jeszcze.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.