To mój pierwszy post na tym forum. Dotychczas czytałem, ale tym razem nie umiem odnaleźć wyjaśnienia mojego problemu.
Wykonywałem sobie jakiś testowy kod OOPHP, żeby odświeżyć sobie temat i trafiłem na taki problem już na początku.
Stworzyłem sobie dwie puste klasy A i B. W B chciałem zainicjować obiekt klasy A i napotkałem błąd:
Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in ...
Kod wyglądał po paru próbach zmian tak:
class A { } class B{ public $var; $this->var = new A(); }
Rozwiązanie znalazłem tutaj. I po tej zmianie jest ok.
class B{ public $var; function __construct() { $this->var = new A(); } }
Jednak nie umiem pojąć dlaczego tworzenie obiektu musi być w konstruktorze. Mógłby ktoś to wyjaśnić? Angielski jest u mnie o, ale tego wyjaśnienia z wklejonej dyskusji nie rozumiem.
Zacząłem obiektowe PHP od Zenda i takie podstawy gdzieś mi pouciekały
