Valentýnská akce je tady! Získej až 80 % extra kreditů ZDARMA na náš interaktivní e-learning. ZJISTIT VÍCE:
NOVINKA: Staň se datovým analytikem a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Diskuze – Lekce 2 - První objektová aplikace 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
Miroslav Mucha:4.12.2017 22:54

Díky za velmi srozumitelné pokračování PHP. I když jsem se s OOP už setkal, teprve teď to začínám chápat-

Avatar
Jan Dostál
Člen
Avatar
Odpovídá na Dávid Vajda
Jan Dostál:11.5.2018 14:38

<?php
require_once ('../tridy/Clo­vek.php');

$karel = new Clovek();
$karel-> pozdrav();
?>

Avatar
Niesomtu Hraskova:11.2.2020 18:32

Super kurzy toto. Ďakujem za ne.

BTW:
ATRIBUTY- druha veta Jedná se vlastně proměnné, se kterými jsme již stokrát pracovali.
chýba tam "o".

Potom este v sekcii METODY: " Přijme si do třídy metodu pozdrav: " tu ma byt asi "Přidejme"

Odpovědět
Hľadám si prácu, tak mi smelo napíš mail.
Avatar
Tomáš Novák:21.3.2021 23:15

Díky za skvělý článek ,Davide! Jen jsem šťoura a máš typo "linoxových" ve třetím odstavci podnadpisu Vytvoření třídy :)

Avatar
Dušan Kovářík:15.7.2021 14:22

Na tento seriál jsem se moc těšil po celou dobu, kdy jsem se prokousával základy, protože na základy jazyka plus OOP se teprve dívám jako na "opravdové" základy... Díky moc za článek a jdeme dál!

Avatar
Jan Štěch
Člen
Avatar
Jan Štěch:19.8.2022 12:23

K tomu použití require_once()
Někde jsem se dočetl, že pokud jako programátor potřebujete používat require_once() a nevystačíte si s require(), znamená to, že nemáte přehled, kdy jaké třídy používáte a neznáte vlastní program. Úplně nevím, jestli je potřeba být k sobě až takto tvrdý, každopádně autoloader toto ve finále vyřeší za vás a _once() funkce nebudete muset používat. Jak jsou na tom tyto funkce z hlediska výkonu netuším, ale očekával bych, že budou o něco pomalejší než obyčejné include() a require().

Avatar
Odpovídá na Jan Grunt
Andrea Drozdková:10.12.2024 12:01

Ahoj Honzo, mám stejný problém. Jak jsi ho vyřešil?

Odpovědět
Když nemůžeš, tak přidej!
Avatar
Tomáš Prčík:1. února 13:27

Tyto lekce jsou podle mě fakt hrozně slabé. Jelikož už jsem komentáře k následujícím dvěma lekcím dal a nedají se změnit, napíšu zde ještě příklad. Nikde není vysvětlen, když si udělám ve třídě nějakou funkci, jak dostanu hodnoty např. vypočítané danou funkcí "ven" z funkce, ze třídy, abych s výsledkem mohl někde v kódu pracovat. Příklad – co udělá následujíc kus kódu ve funkci v třídě?

$this->unava -= $doba * 10

Je to tak, že se součin doba x 10 uloží do proměnné úvava a ta se uloží do this?

Avatar
DarkCoder
Člen
Avatar
Odpovídá na Tomáš Prčík
DarkCoder:1. února 19:07

Podívej co je ve výrazu za operátor. Je tam -= nikoli =

$this->unava -= $doba * 10;

je zkrácený zápis pro:

$this->unava = $this->unava - ($doba * 10);

nejdřív se spočítá výraz
pak se výsledek odečte
nová hodnota se uloží zpět do vlastnosti objektu

$this je „aktuální instance“, která metodu právě volá
chová se jako náhrada konkrétní proměnné s objektem

Máš třídu:

class Postava
{
    public int $unava = 100;

    public function odpocinout(int $doba): void
    {
        // sníží únavu podle doby odpočinku
        $this->unava -= $doba * 10;

        // pojistka – únava nemůže jít pod nulu
        if ($this->unava < 0) {
            $this->unava = 0;
        }
    }
}

a použití:

$postavaA = new Postava();
$postavaB = new Postava();

$postavaA->odpocinout(3);

Uvnitř metody odpocinout() PHP dosadí $this za objekt, který metodu volá.

Takže příkaz:

$this->unava -= $doba * 10;

je ve skutečnosti:

$postavaA->unava = $postavaA->unava - (3 * 10);
Odpovědět
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Odpovídá na DarkCoder
Tomáš Prčík:1. února 21:01

Pardon, to mínus před tím rovná se jsem tam zapomněl. I když, to je vlastně pro obsah příspěvku jedno. Hlavní sdělení podle mě bylo, že ty lekce jsou nezvládnuté. Některé věci tam vůbec nejsou vysvětlené - jako je ta v tom mém příspěvku. A člověkovi to pak bere hrozně času si to googlit, resp. - tak to asi dopadne v mém případě - zaplatit kamarádovi, ať mi to vysvětlí.

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 46.