Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] programowanie obiektowe, która opcja jest prawidłowa, Używać global czy w każdej funkcji tworzyć instancję klasy?
grzemach
post
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

  1. $pages = new Pages();
  2. $pages->funkcja1();
  3. $pages->funckja2();


Dodatkowo jest klasa z formularzami:
  1. class Forms{
  2. public function submit(){}
  3. public function inputText(){}
  4. }


Teraz w funkcji1 chcemy stworzyć jeden formularz i w funkcji2 chcemy stworzyć jeden formularz.
czyli
  1. class Pages{
  2. public function1(){
  3. $form = new Forms();
  4. // lecimy dalej z formularzem i treścią
  5. }
  6. public function2(){
  7. $form = new Forms();
  8. // dalej treści
  9. }
  10. }



Można zrobić też w drugi sposób tzn index.php by wyglądał
  1. $pages = new Pages();
  2. $form = new Forms();
  3. $pages->funkcja1();
  4. $pages->funckja2();


a Pages:
  1. class Pages{
  2. public function1(){
  3. global $form;
  4. // lecimy dalej z formularzem i treścią
  5. }
  6. public function2(){
  7. global $form;
  8. // dalej treści
  9. }
  10. }


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ć.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

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


(IMG:style_emoticons/default/sciana.gif) (IMG:style_emoticons/default/sciana.gif) (IMG:style_emoticons/default/sciana.gif) (IMG:style_emoticons/default/sciana.gif)

Nie potrzebujesz tu singletonu.
Rozwiazanie zalezy od tego co ty robisz, czym jest Page, czym Form (po co one sa, co robia, co reprezentuja), jak ze soba wspolpracuja itd.
Bez tej wiedzy nic dobrego nie stworzysz.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 8.10.2025 - 04:11