Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

konstruktori u php5

[es] :: Advanced PHP :: konstruktori u php5

[ Pregleda: 2634 | Odgovora: 6 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

green day
Nikolic Vuk
Banovo Brdo, Beograd

Član broj: 4895
Poruke: 242
*.beograd-3.tehnicom.net.

ICQ: 42139643
Sajt: www.letva.org


Profil

icon konstruktori u php518.12.2004. u 14:07

pozdrav svima,

interesuje me da li moze da se napravi vise konstruktora, odnosno da oni imaju razlicite argumente.

kad sam probao da definisem dva konstruktora, znaci ImeKlase($arg) i ImeKlase($arg1, $arg2) prijavljuje mi gresku da ponovo deklarisem istu funkciju.

e sad, uz pomoc func_num_arg bi mogao da resim problem u jednom konstruktoru, ali mi je lakse da radim sa vise konstruktora (navika iz c++).

jel to moze u php5?


http://vuk.letva.org - moja prezentacija
www.letva.org - najmanji board na svetu
www.pathofdecay.com - EP OUT NOW!
18.12.2004. u 14:07 

Ilija Studen
Novi Sad

Član broj: 3864
Poruke: 859
*.beotel.net.

Sajt: www.activecollab.com


Profil

icon Re: konstruktori u php518.12.2004. u 16:20
Koliko je meni poznato nije. Mislim da PHP uopšte nema mogućnost overloadovanja funkcija... Mudro odaberi ulazne podatke tako da možeš lepo da odlučuješ šta ćeš i kako ili koristi rešenje koje si ti naveo.
http://www.activecollab.com - Alat za upravljanje projektima
18.12.2004. u 16:20 

bluesman
Goran Pilipović
Beograd

Član broj: 4505
Poruke: 1885
*.ptt.yu.

ICQ: 7987706
Sajt: www.revolution.co.yu


Profil

icon Re: konstruktori u php519.12.2004. u 00:25
Jedino resenje je da prosledjujes array kao parametar pa onda ukonstruktoru radis proveru elemenata, drugo resenje je da radis sa default vrednostima

ImeKlase ($a, $b = 5, $c = "test")


Goran Pilipović fka bluesman
19.12.2004. u 00:25 

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.83.beocity.net.

Sajt: localhost


Profil

icon Re: konstruktori u php519.12.2004. u 02:48
ima još jedan trik (jeste uz pomoć func_num_args(), ali "automatizovano" ;)

Code:
class Klasa {
    
    function Klasa() {
        call_user_method_array('Klasa'.func_num_args(), $this, func_get_args());
    }

    function Klasa1($arg1) {
        // konstruktor sa jednim argumentom
    }

    function Klasa2($arg1, $arg2) {
        // konstruktor sa dva argumenta
    }

    // itd.. ;)

}


19.12.2004. u 02:48 

Ilija Studen
Novi Sad

Član broj: 3864
Poruke: 859
*.beotel.net.

Sajt: www.activecollab.com


Profil

icon Re: konstruktori u php519.12.2004. u 10:59
zombie, to je skroz dirty rešenje ;)

Uglavnom koristim rešenje koje je Goran naveo (pod b.).
http://www.activecollab.com - Alat za upravljanje projektima
19.12.2004. u 10:59 

green day
Nikolic Vuk
Banovo Brdo, Beograd

Član broj: 4895
Poruke: 242
*.beograd-2.tehnicom.net.

ICQ: 42139643
Sajt: www.letva.org


Profil

icon Re: konstruktori u php520.12.2004. u 12:46
zombie svaka ti cast. nebi mi to palo napamet, bas iskusno.

al cu ipak ja da se drzim mog func_num_arg :)

http://vuk.letva.org - moja prezentacija
www.letva.org - najmanji board na svetu
www.pathofdecay.com - EP OUT NOW!
20.12.2004. u 12:46 

leka
Dejan Lekić
senior software engineer, 3Developers Ltd.
London, UK

Član broj: 234
Poruke: 2530
..31.216.81.gus.vf.siwnet.net.

Sajt: dejan.lekic.org


Profil

icon Re: konstruktori u php529.03.2005. u 12:32
Ja bih nedostatak mogucnosti da se preopterete konstruktori resio tako sto bih prepravio svoje klase (cije instance prosledjujem konstruktoru) da sve od reda implementiraju neki odredjeni interfejs. Nakon toga mogu bez problema da jedan jedini argument tretiram na isti nacin, jerbo znam da taj objekat 100% ima funkcije koje cu pozivati u konstruktoru...
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
29.03.2005. u 12:32 

[es] :: Advanced PHP :: konstruktori u php5

[ Pregleda: 2634 | Odgovora: 6 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.