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 19 - Matematické funkce 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
Pavol Hejný
Tvůrce
Avatar
Pavol Hejný:22.7.2015 14:37

Ještě bych rád doopravil v článku, že všchno to nejsou goniometrické funkce, jsou 4 kategorie těhdle funkcí:

Goniometrické funkce (Týkají se jednotkové kružnice)
Používají se na hrozně moc věcí. Např. vykreslování kružnic, elips, posunů....
sin();
cos();
tan();

Cyklometrické funkce (Týkají se jednotkové kružnice)
Výpočet úhlu z x a y. Převody kartézských a polárních souřadnic.
asin();
acos();
atan();

Hyperbolické funkce (Týkají se jednotkové hyperboly)
Dalo by se říct takové jednoduché přirovnání:

Elipsa, Kružnice, Kružnice s poloměrem 1
Hyperbola, Rovnoosá hyperbola, Jednotková hyperbola

Používají se např. při generévání terénu, fyzikálních simulacích.
sinh();
cosh(); //řetězovka
tanh();

Hyperbolometrické funkce (Týkají se jednotkové hyperboly)
asinh();
acosh();
atanh();

Odpovědět
22.7.2015 14:37
/^(web )?(app )?developer$/
Avatar
gorri
Člen
Avatar
gorri:23.8.2016 16:23

Zdravím zkušenější programátory.
Narazil jsem na problém a už si s ním nevím rady, tak bych požádal profíky o radu.
Na stránce se mi přes funkci ob_start otevírají všechny soubory, které mám a potřebuji je zobrazit. Toto je řízeno podmínkou, že musí být v článku příznak, že patří do této kategorie.
Díky tomu se mi v dané kategorii zobrazí jen 10 článků, které potřebuji zobrazit. V každé kategorii je tomu jinak ale vše je řízeno podmínkou, že musí mít v článku příznak, který říká, že patří do této kategorie. Zároveň je s tím spojena ještě podmínka, že článek nesmí expirovat.
K tomuto jsem se rozhodnul vytvořit si funkci, která mi umožní zobrazovat určitý obsah (includem) pokud jich je zobrazeno minimálně 5.
Nicméně problém je, že ve chvíli kdy je příspěvků na stránce 5 (ošetřeno následovně: pokud je podmínka pro zobrazení příspěvku splněna tak rovnou zapíše do určité proměnné ++.
Jakmile je obsah proměnné například 4 tak chci aby se zobrazil includovaný soubor.
Bohužel ve chvíli kdy se spustí funkce tak někde mi to includuje soubor 5x a někde jen 1x nebo 2x. Chci aby se includoval pouze jednou a vždy po tom co je v proměnné 4 a 8.
Věděl by někdo co s tím?
Stránka je dělána bez MySQL.
Níže je ukázka kódu

funkce k zobrazení includovaného souboru
function reklamapr() {

if (($GLOBALS['re­klama'] == 4))
{
(include ('./includes/me­nu.php'));}
else {echo "";}

if (($GLOBALS['re­klama'] == 9))
{
(include ('./includes/me­nu.php'));}
else {echo "";}

}

podmínka, která vše řídí
if {echo "vypis" and $reklama++;} else {echo "none";}

$reklama++ má zvýšit při splnění podmínky $reklama o jedno číslo.
Moc děkuji všem za radu.
Snad jsem to vysvětlil tak aby se to dalo pochopit.
Dokázal by mi někdo s tímto poradit prosím?

Odpovědět
23.8.2016 16:23
Když vím, tak poradím. Nikdo neví všechno :-)
Avatar
gorri
Člen
Avatar
gorri:23.8.2016 16:29

Omlouvám se. Zde je podmínka, která řídí zobrazení příspěvku a zároveň i přičítá do $reklama když je podmínka splněna. Nevím proč se kód nezobrazil. Asi chyba mezi klávesnicí a křeslem :-D

if(($umisteni13 == 13) and (date("d-m-Y",$realnycas) < $expirace)) {echo "vypis" and $reklama++;} else {echo "none";}
Odpovědět
23.8.2016 16:29
Když vím, tak poradím. Nikdo neví všechno :-)
Avatar
Pavel Kubalík:23.12.2020 15:28

Dobrý den
Kurz PHP se blíží ke konci, a tak je třeba vše shrnout a zhodnotit.
Kurz byl výborný a příklady přiměřeně těžké. Až na jeden jsem se probojoval s úspěchem. |U jednoho jsem si nechal napovědět, ale je dobrý jako "mustr".
Přišel také čas se rozhodnout jak dál.
Rozhodně neukončím studium a nepůjdu hostovat na web. Rozhodl jsem se pokračovat, a to v Objektově orientovaném programování. Poplatek je sice poněkud větší, a nebezpečí nedokončení kurzu (a tím pádem znehodnocení investice) je velké, ale nedá se nic dělat. I tak bych přispěl na dobrou věc.
Takže se budu těšit na nový kurz. Poslední lekci tohoto jsem již jednou prošel, tak bych to rád zítra uzavřel. Taky jsem podruhé prošel kurz od začátku, a objevil jsem věci, které jsem poprve přehlédl, nebo jsem ji nedal dostatečnou pozornost. počítám, že se za dva měsíce ještě jednou k základům PHP vrátím.
Musím ještě vzpomenout nedokončený kurz HTML a CSS. HTML jsem si ještě jednou proběhl, a celkem jsem v obraze. Horší je to s CSS, to mi při studiu (zatím z neobjevených důvodů) moc nešlo. Možná, že příklady byly moc náročné, nevím. Každopádně se k tomu brzy budu muset vrátit (možná víckrát).
Taky budu muset zvolnit při studiu OOP, je to mnohem náročnější. I když výsledek za to jistě stojí.
Děkuji PK

 
Odpovědět
23.12.2020 15:28
Avatar
Odpovídá na Pavel Kubalík
Dušan Kovářík:7.7.2021 18:54

Ahoj, moc se mi líbí tvůj přístup!
Mám to trochu podobně. Rozhodl jsem se naučit PHP včetně databází, OOP (s tím už mám nějaké zkušenosti z jiných jazyků) a nějakého frameworku (nejspíš Laravel). Pro front-end se učím samozřejmě JavaScript, což obnáší znalost HTML + CSS, dále rovněž OOP a framework React.
S tím stylováním to mám úplně stejně :) To je pro mě mnohdy fakt piplačka - "analýza" výsledků v prohlížeči (ten nástroj v Chrome, který se spustí klávesou F12), úpravy, další zkoušení... Prostudoval jsem si tutoriál "statický web", kde jsou základy HTML a CSS popsány společně, ale budu si muset projít ještě ty dva samostatné a podrobné (jeden na HTML a druhý na CSS).
Je toho fakt hodně, ale zase když zrovna nemám náladu na jednu věc, můžu přepnout na jinou.
Také jsem si udělal v Excelu "pokrokové tabulky", kam si zaznamenávám, které lekce daného tutoriálu jsem si prostudoval, jak dobře mám pocit, že to umím :) na stupnici 1 až 10 (abych věděl, co si mám opakovat), a která cvičení jsem úspěšně udělal. Zobrazuje se mi tam v procentech, jak jsem daleko apod. Je to taková moje oblíbená motivační pomůcka :)
Ať se ti daří!

 
Odpovědět
7.7.2021 18:54
Avatar
Dušan Kovářík:7.7.2021 19:19

Dovolím si okomentovat některé drobné chybky, na které jsem v této lekci narazil:

  • Úryvek z textu: "fmod(x, y) = vrací desetinný zbytek po celočíselném dělení x/y": zbytek po celočíselném dělení je z principu vždy celé číslo. Mně tato funkce funguje tak, že vrací (desetinný nebo celý, podle situace) zbytek po jakémkoli dělení. Např.:
echo(fmod(6.5, 2.5));

vypíše 1.5

  • V tabulce s konstantami se mi zobrazují čísla v dolním indexu (nevím, jestli za to nemůže prohlížeč). Všude, kde je číslo v dolním indexu, se toto číslo napíše do kódu běžným způsobem (jinak to ani nejde :) ) a před něj přijde podtržítko. Např.:
M_PI_2
M_PI_4
M_1_PI

a podobně.

  • V popisu funkce pi() chybí závorky, které tam musí být.

Jsou to samozřejmě jen detaily - pouze na ně upozorňuji - nekritizuji jinak pro mě naprosto skvělý článek!

Jinak k matematice mám kladný vztah a musím říct, že jsem docela ohromen, kolik matematických funkcí v PHP je a moc se mi to líbí :) Díky za krásný přehled!

 
Odpovědět
7.7.2021 19:19
Avatar
Lumír Kus
Člen
Avatar
Lumír Kus:20.11.2021 17:36

Pro důkladné pochopení si rozebírám a zkouším všechny příklady a narazil jsem na jeden překlep v části o číselných soustavách
Tento příklad echo hexdec(24); // 36 (z šestnáctkové do osmičkové)
je ve skutečnosti převod ze šestnáctkové do desítkové.

 
Odpovědět
20.11.2021 17:36
Avatar
Ferda Mravenec:16.2.2022 23:14

Ve 3. tabulce (porovnání 3 funkcí), v posledním řádku, je chyba. Všude má být číslo 6, ať už kladné či záproné.

 
Odpovědět
16.2.2022 23:14
Avatar
Bohuslav Labaj:24.3.2022 10:26

opravte si u funkce round

round(5483.47621, 2); // 5483.47 na 5483.48
 
Odpovědět
24.3.2022 10:26
Avatar
Odpovídá na Bohuslav Labaj
Bohuslav Labaj:24.3.2022 11:40

Pokud to je potřeba, tak u funkce ceil() a floor() lze řešit zaokrouhlení dolů či nahoru například pro číslo 4.2356 na dvě desetiny jednoduše takto:

ceil(4.2356 * 100) / 100;  // výsledek 4.24
floor(4.2356 * 100) / 100; // výsledek 4.23
 
Odpovědět
24.3.2022 11:40
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 12.