NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 5 - První objektová komponenta v PHP - Galerie obrázků

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
Avatar
Marián Mídelka:9.11.2022 13:58

Chcem sa spýtať, kde môže byť chyba, lebo vždy mi vypisuje:

Syntax error unexpected:        private
 after: (
 expected:      identifier, variable, array, callable, namespace, \, define, ?, &, )

POSSIBLE Syntax Error (check preceding valid syntax error)
 unexpected:    variable '$slozka'

POSSIBLE Syntax Error (check preceding valid syntax error)
 unexpected:    ','

POSSIBLE Syntax Error (check preceding valid syntax error)
 unexpected:    variable '$sloupcu'

POSSIBLE Syntax Error (check preceding valid syntax error)
 unexpected:    )
public function __construct(private string $slozka, private int $sloupcu) {}
Odpovědět
9.11.2022 13:58
Keď niečo nejde, skús niečo iné. Možno to tiež nepôjde!
Avatar
Michal H.
Člen
Avatar
Odpovídá na Marián Mídelka
Michal H.:7.12.2022 6:49

Dáváš do funkce ( konstruktoru ) atributům private . Tak že vlastně chceš aby při volání funkce byl vložen privatní atribut, ale privat jen označuje jak má být s proměnnou naloženo ve třídě. Proto ti to vyhazuje chybu v syntaxi - PRIVATE tam máš dokonce napsáno ;)

private, public jsou označení kterým třídě říkáš co bude přístupné z venku a co ne. Ve funkci jaksi nemají co dělat.

 
Odpovědět
7.12.2022 6:49
Avatar
Michal H.
Člen
Avatar
Odpovídá na Marián Mídelka
Michal H.:7.12.2022 7:36

Ehmmm k předchozímu komentáři. Škoda že jsem nestihnul edit :(

Oprava:
v konstruktoru atribut private, publik evidentně být může.
Ale pokud jsem to dobře pochopil nemůže být předtím ona proměnná definována. Tak že pokud jsi předen definoval proměnné složka, sloupec tato verze konstruktoru možná proto vyhazuje chybu.
Protože by ses pak znovu pokoušel definovat stejné proměnné.

Mám ještě ke studiu knihu se starší verzí PHP se kterou zároveň pracuji. Tenhle konstruktor který "vytváří" proměnné je až od php 8... Tak že jako bych předtím nic nenapsal... :D

Ono je to i vysvětleno v lekci s konstruktorem ( definice vlastností). Jen by bylo fajn tam přihodit i příklad kódu ne jen doplnit edit ( asi líná edi(ta)ce :D ). Aby bylo jasné jak takovej konstruktor který definuje proměnné vypadá :) Popř jaké může mít kolize.

https://wiki.php.net/…or_promotion

Editováno 7.12.2022 7:38
 
Odpovědět
7.12.2022 7:36
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 3 zpráv z 83.