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 3 - Proměnné a typový systém 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
Avatar
Dan Ma
Člen
Avatar
Dan Ma:28.7.2023 17:58

Kurz je pěkný. Konečně jsem zvládl 1. lekci. Snažím se k tomu číst i další materiály a tam jsem se dočetl, že konstantu lze ještě definovat pomocí klíčového slova const:
const JMENO_KONSTANTY = hodnota;
Pro zajímavost jsem si dohledal předdefinovanou konstantu pro číslo $pi = M_PI;
Zobrazí to potom krásnou hodnotu: 3.1415926535898 😃

Odpovědět
28.7.2023 17:58
Nenechat se vyděsit.
Avatar
Lukáš Halamka:9.8.2024 7:19

Nefunguje audio verze . Jinak zatím vše vysvětleno dobře

 
Odpovědět
9.8.2024 7:19
Avatar
sahlepik
Člen
Avatar
sahlepik:10.8.2024 14:56

Rád bych se zeptal na datový typ float a double. V článku se píše, že v PHP jsou oba dva rovnocenné. Pokud si dobře pamatuji, float vždy označoval datový typ čísla uloženého v pohyblivé řádové čárce s jednoduchou pameti (32 bitů) a double totéž s dvojitou přesností (64 bitů). V PHP je to tedy jinak? Kolik bitů tedy číslo v paměti zabere? Děkuji, rád bych v tom měl jasno 🙂

Editováno 10.8.2024 14:57
 
Odpovědět
10.8.2024 14:56
Avatar
DarkCoder
Člen
Avatar
Odpovídá na sahlepik
DarkCoder:10.8.2024 15:27

Interně jsou oba typy reprezentovány stejně. Oba odpovídají standardnímu formátu IEEE 754 pro čísla s plovoucí desetinnou čárkou, který se používá pro 64bitové double-precision čísla.

Typ double je historicky pojmenovaný termín, který se v PHP používal dříve. Od PHP 4 se však standardizovalo používání názvu float.

V moderním PHP (verze 7 a novější) se oficiálně používá pouze typ float. Typ double je synonymem pro float, ale jeho použití se nedoporučuje, protože je to zastaralý termín.

Odpovědět
10.8.2024 15:27
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
sahlepik
Člen
Avatar
Odpovídá na DarkCoder
sahlepik:10.8.2024 15:58

Aha, děkuji za objasnění. V rámci standardu IEEE 754 jsem měl právě dojem, že typ foat reprezentuje zápis reálného čísla v pohyblivé řádové čárce s jednoduchou přesností (32 bitů v paměti).

Editováno 10.8.2024 15:59
 
Odpovědět
10.8.2024 15:58
Avatar
DarkCoder
Člen
Avatar
Odpovídá na sahlepik
DarkCoder:10.8.2024 16:04

IEEE 754
Jinak řečeno, pouzivej pouze typ float 🙂

Odpovědět
10.8.2024 16:04
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Míša T.
Člen
Avatar
Míša T.:15. března 12:04

Ahoj, u tý konstanty mi nejde zapsat ten řádek echo, píšu:
echo "Verze aplikace: . VERZE";
ale chrome hlásí error. Zkoušela jsem to slovo verze psát bez tečky, s tečkou, s mezerou i bez, místo uvozovek i závorky dle předlohy (ale závorky nevím proč nefungují, tak jsem se vrátila k uvozovkám), ale nic nefunguje. Vysvětlení, proč je tam zapsaná tečka s mezerou v tom příkladu nikde není a tím, že mě to nefunguje, tak jsem to nepochopila. Jak to tedy správně zapsat do toho kodu?
já to vidím, že to slovo verze není bílý, ale zelený, takže mi to echo napíše jako Verze aplikace: VERZE, což bych i z toho kodu chápala, jako dobře, ale jak jinak to zapsat, aby tam teda bylo to číslo? Děkuji

 
Odpovědět
15. března 12:04
Avatar
Jan Poláček
Tvůrce
Avatar
Odpovídá na Míša T.
Jan Poláček:15. března 14:11

Ahoj, je to tím, že tu konstantu máš napsanou v těch uvozovkách, takže funkce echo to bere jako string(řetězec) a nenahradí tou konstantou.

define("VERZE","1.0");
echo "Verze aplikace je: ".VERZE;
echo "Nejnovější verze ".VERZE." umožňuje XYZ";

Takto by to mělo být funkční, tečka spojuje řetězec (ten je právě v uvozovkách) s konstantou.
Přidal jsem ještě jeden řádek pro ukázku konstanty někde uprostřed, opět tedy tečka spojuje a mezitím jsou dva řetězce. Místo konstanty tam samozřejmě může být i proměnná (ona jednoduchá proměnná se dosadí automaticky i přímo v rámci řetězce, ale například u pole tam ten spojovač bude. Jednoduchá proměnná je např. $promenna a pole je $pole["prvek"]
Snad je to dostatečné :)

Odpovědět
15. března 14:11
Instrukce na adrese 0x77104f29 odkazovala na adresu paměti 0x00000014. S pamětí nelze provést operaci: written.
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 8 zpráv z 88.