![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 4 Dołączył: 9.06.2007 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Ostatnio nasunęło mi się pytanie odnośnie programowania obiektowego w PHP (a i chyba ogólnie). Załóżmy że mamy plik index.php
Dodatkowo jest klasa z formularzami:
Teraz w funkcji1 chcemy stworzyć jeden formularz i w funkcji2 chcemy stworzyć jeden formularz. czyli
Można zrobić też w drugi sposób tzn index.php by wyglądał
a Pages:
Przy czym z użytkowego punktu widzenia nie ma to żadnego znaczenia. W tej klasie nie ma żadnej zmiennej statycznej, którą można by wymieniać między poszczególnymi funkcjami. Chciałem się zapytać która z tych opcji jest właściwa i która należało by używać. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dependency Injection (@Fafu podał to rozwiązanie) - klik
Poprostu przekazujesz referencję obiektu (Form) do innego obiektu (Pages) poprzez konstruktor, metodę dostępową (setter, np. setForm()) lub też publiczną składową (odradzane). @deirathe - ten Twój singleton jest trochę kulawy (publiczny konstruktor, nie będe się już czapiał możliwości klonowania bo przykład miał zapewne być okrojony, ale lepiej zmień modyfikator przy konstruktorze z public na private/protected) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 03:49 |