POUZE NYNÍ: Získej až 80 % extra kreditů ZDARMA na náš interaktivní e-learning. Zjistit více.
NOVINKA: Staň se datovým analytikem od 0 Kč a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Diskuze – Lekce 3 - Atributy a magické metody v PHP

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Nejnovější komentáře jsou na konci poslední stránky.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:5.8.2013 10:08

Já nevím, ale tato magie mi připadá zbytečná. Asi proto se mi nelíbil jazyk Ruby. Raději napíši klasický wrapper, bude to fungovat stejně a dost možná i rychleji.

Odpovědět
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:5.8.2013 10:55

Tato magie je nezbytná, pokud potřebuješ ze šablony zavolat nějakou metodu některého objektu. Bez té magie to jde jen hodně nešikovně a musíš přitom šablonu roztrhnout např. na hlavičku, tělo a patičku.

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:5.8.2013 11:00

Proč bych z šablony nemohl zavolat metodu objektu? Prostě si tam předám ten objekt, nač to komplikovat. Navíc v šablonách vypisuji jen proměnné, co si tam předám, maximálně používám statické helpery.

Odpovědět
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:5.8.2013 11:07

Musel bych tu šablonu nějak přerušit, např. <?=, {, tečkami apod. Bez přerušení můžeš přímo vkládat pouze proměnné, objekty a proměnné objektů.

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:5.8.2013 11:11

PHP má to přerušování perfektně navržené, není důvod ho nepoužít.

Odpovědět
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:5.8.2013 11:18

Jenže pak už spojuješ řetězce a má to určitý dopad na výkon. Kromě toho to už nevypadá tak hezky.

Stejně do šablony vkládám jen celé objekty. Na metody ani proměnné objektu se zpravidla neodkazuji.

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:5.8.2013 11:27

Magické metody mají také obrovský dopad na výkon, doporučuje se je nepoužívat.

Odpovědět
New kid back on the block with a R.I.P
Avatar
Odpovídá na Kit
Neaktivní uživatel:5.8.2013 11:27

Další výhoda Smarty. :)

Odpovědět
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:5.8.2013 11:28

Další nevýhoda Smarty :)

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:5.8.2013 11:31

Zkoušel jsem kombinovat různou délku a počty řetězců. Magické metody přitom vycházely někdy až řádově rychlejší než Smarty.

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Nejnovější komentáře jsou na konci poslední stránky.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 85.