Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 5.942 pregleda

Najnovija ↓

konstruktori u php5 18.12.2004. u 15:07 · pre 266 meseci #1
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?

Potpis
http://www.vuknikolic.com
http://www.klopaj.com
Re: konstruktori u php5 18.12.2004. u 17:20 · pre 266 meseci #2
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.
Potpis
http://www.activecollab.com - Alat za upravljanje projektima
Re: konstruktori u php5 19.12.2004. u 01:25 · pre 266 meseci #3
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")

Potpis
Goran Pilipović fka bluesman
Re: konstruktori u php5 19.12.2004. u 03:48 · pre 266 meseci #4
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.. ;)

}

Potpis
blogče :: unescaped beta
  »
go-paste extenzija
  »
reč dana: backup
  »
bočne koalicije
Re: konstruktori u php5 29.03.2005. u 13:32 · pre 262 meseca #7
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...
Potpis
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme