Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Przeciążanie konstruktora
athabus
post
Post #1





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

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


Mam pytanie czy w php5 da się przeciążyć konstruktor? Generalnie wiem, że można przeciążać dowolną funkcję za pomocą __call, ale z konstruktorem jakos mi nie wychodzi (IMG:http://forum.php.pl/style_emoticons/default/mad.gif)

Próbowałem zarówno użyć __construct jak i NazwaKlasy przy przeciążaniu w __call i nic z tego. Czy ktos wie jak można przeciążyć konstruktor?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
WaterIntelligenc...
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 1
Dołączył: 29.09.2008
Skąd: Świdnica

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


Można również stworzyć Fabrykę i jest to moim zdaniem najlepsze rozwiązanie dla tworzenia parametryzowanych obiektów. Rozdzielamy odpowiedzialność w czytelny i bardziej intuicyjny sposób.

CODE


class Foo
{
public function __construct()
{ }
}

class FactoryFoo{

public function createFromArray($arr){
$objFoo = new Foo(); $objFoo->p1 = $arr['p1']; // itd
return $objFoo;
}

public function createFromUser($user){ ... }

public function createFromPOSTRequest($arrPost){ ... }

// itd.

}



Unikamy stosowania 'if'.
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: 4.10.2025 - 21:18