Autor | Zpráva | ||
---|---|---|---|
needu Profil * |
#1 · Zasláno: 15. 11. 2014, 21:54:42
Dobrý den,
vždy jsem se na Vás mohl obrátit a mám na Vás dotaz, zda by mi to někdo nemohl vysvětlit, resp. ukázat přímo na kódu. Googloval jsem, ovšem moc tomu nerozumím. Nedávno jsem se naučil základy OOP a potřeboval bych vědět, jak se používá namespace A poté ještě dvě věci. Mám třeba třídu "Maincore" a v ní jednotlivé metody - funkce. Tu třídu tedy vytvořím: $promenna = new Maincore; Ale viděl jsem třeba toto: $neco = new Neco; $neco->nejakaTrida->druhaTrida(); $this->dalsiTrida(); Třeba: Class xx{ function neco() { return "ahoj"; } function pozdrav(); { echo $this->neco(); } } Dokázal by mi někdo toto vysvětlit? Děkuji ještě jednou moc! |
||
Alphard Profil |
1. namespace (jmenný prostor) slouží, jednoduše řečeno, jako další vrstva v pojmenovávání. Umožňuje sdružovat k sobě (nejen) třídy a používat pro ně názvy, které by v globálním kontextu byly duplicitní.
Často se jejich funkce a struktura přirovnává k adresářovému stromu (roztřídit prvky do nějaké struktury, aby „nebyly na jedné hromadě“), ale na začátku není nezbytné se tím zabývat. 2. když metoda vrací $this , vrací vlastně referenci (pozn. není to reference ve smyslu &$prom) na původní objekt (totéž, co obsahuje $neco ), takže lze zřetězeně volat další metody. Mluví se o tom jako o fluent interface.
3. $this mimo třídu volat nelze, v podstatě je to jen zástupná proměnná pro současnou instanci, z venku je třeba pracovat s proměnnou navrácenou při vytváření nového objektu $instance = new Object(); .
|
||
needu Profil * |
#3 · Zasláno: 15. 11. 2014, 22:47:11
Paráda!! Díky moc.
|
||
Časová prodleva: 10 let
|
0