PHP (2) - Jak to funguje
V minulém díle jsme si ukázali, co PHP vlastně je a k čemu všemu se dá použít. Dnes se zaměříme na to, co to PHP zhruba dělá a jak celá komunikace mezi serverem a prohížečem při použití tohoto jazyka funguje.
28.5.2004 15:00 |
Petr Zajíc
| Články autora
| přečteno 164155×
Jestliže s PHP začínáte, měli byste si tento článek pečlivě přečíst.
Setkal jsem se totiž s lidmi, kteří sice s tímto jazykem už nějakou
dobu pracují, ale přesto jim uniká princip - a dělají tak základní
koncepční chyby.
Princip PHP
V době internetového pravěku byly všechny
internetové stránky statické. Prostě tak, jak byla stránka napsána, tak
byla odeslána do prohlížeče a tak byla také zobrazena. To pochopitelně
časem přestávalo stačit, a proto byla vyvinuta celá řada technologií,
které měly stránky rozpohybovat. Zhruba řečeno se dají tyto technologie
rozdělit do dvou skupin, na "klientské" a "serverové".
"Klientské"
technologie se spoléhají na jednoduchou věc: Spolu s HTML stránkou je
prohlížeči odeslán i nějaký kus programového kódu a ten je ve vhodnou
chvíli na "cílovém" počítači spuštěn. Vhodná chvíle může nastat
například při kliknutí na tlačítko, při najetí myší na odkaz, při
otevření okna prohlížeče a podobně. O spuštění klientského kódu se
stará
prohlížeč - a to může být nevýhoda. Prohlížeč totiž musí znát
programovací jazyk, v němž je kód napsán. Příkladem
technologií běžících na straně klienta je například Java script. Máme o
něm na Linuxsoftu seriál.
"Serverové" technologie jsou založeny na jiném principu. Když
prohlížeč
požaduje webovou stránku ze serveru, server tuto stránku nejprve
sestaví a pak odešle. Servery mohou (a také to často dělají) sestavovat
pokaždé jinou stránku v závislosti na tom, co přesně prohlížeč
požaduje.
PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. Typický PHP skript
obsahuje jednak kusy normálního HTML kódu, a jednak kusy programového
kódu. Když webový server obdrží požadavek na zpracování takového
skriptu, vezme:
- kusy HTML kódu tak, jak jsou
- části PHP programového kódu provede
- výsledek zkombinuje a odešle prohlížeči
Tato filozofie fungování je nesmírně mocná. Server totiž může
provést jednu nebo dokonce několik operací a výsledek poslat do
prohlížeče jako obyčejnou HTML stránku. Jakmile tento koncept
pochopíte, můžete začít psát PHP skripty. Celé si to předvedeme na malé
ukázce: Následující kód je obyčejná HTML stránka. Když si ji prohlížeč
vyžádá, uvidíte v něm jen řádek mezi značkami.
<HTML>
Já jsem obyčejná stránka. Nic neumím.
</HTML>
Následující kód je
PHP skript. Všimněte si, že se skládá jednak
z HTML kódu, a jednak z PHP kódu. V některém z dalších dílů to
rozebereme podrobněji, teď ale jen uvedu, že to, co vidíte mezi
značkami <? a ?> je právě PHP kód. Příkaz echo vypisuje text na
standardní výstup a příkaz Date vrací aktuální čas:
<HTML>
Já jsem speciální stránka. Vím, že právě je <?echo Date("G:i")?>
</HTML>
Jak asi tušíte, stránka vám vypíše
aktuální čas na serveru v
době, kdy byla generována. To proto, že kód mezi značkami <? a ?>
se na serveru nejprve provede a teprve pak se výsledek odešle
prohlížeči. Jinými slovy, do prohlížeče dorazí něco jako:
<HTML>
Já jsem speciální stránka. Vím, že právě je 21:08
</HTML>
Prohlížeč nemá sebemenší tušení, co všechno se na serveru dělo
než mu byl výstup odeslán, vidí jen samotný výsledek. Dodejme, že dít
se na serveru mohla celá řada věcí – matematické výpočty, přístupy k
databázím, formátování, operace s řetězci a podobné taškařice. Z toho
vyplývá několik důležitých věcí.
Za prvé, abyste mohli PHP
skript skutečně spustit, musíte ho "prohnat" serverem. Když ho otevřete
v textovém editoru nebo si ho prohlédnete jako soubor na disku,
neuvidíte výsledek, ale zdrojový kód skriptu. To se Vám
může plést
zejména tehdy, když máte PHP skript na vlastním počítači a používáte na
prohlížení souborů na disku stejný nástroj jako na prohlížení obsahu
sítě internet (třeba Konqueror). PHP soubor proženete serverem tak, že
se na něj zeptáte prohlížeče pomocí adresy url. Například pomocí http://localhost/skript.php
můžete skutečně donutit server, aby skript
zpracoval a poslal Vám výsledek, zatímco prostřednictvím file://var/www/html/skript.php
zobrazíte jen zdrojový soubor.
Za
druhé – PHP skripty nejsou vlastně vůbec závislé na použitém
prohlížeči, protože ten s nimi nepřijde do styku. Všechnu práci si
odskáče server a do prohlížeče dorazí jen prosté HTML.
Za třetí – části PHP kódu se do skriptů vkládají pomocí
speciálních značek. Z ukázky to sice nevyplývá, ale v úvahu přicházejí
následující možnosti kombinace HTML a PHP kódu v jednom souboru:
- Celý soubor může být jeden dlouhý PHP kód. Pak začíná a končí
znaky <? a ?>
- V souboru může být kód PHP jen na jednom určitém místě.
- V souboru ale klidně může být více než jedno místo obsahující
PHP kód
- Soubor se sice může tvářit jako php skript, ale ve skutečnosti
je to normální HTML soubor a PHP kód v něm vůbec není.
Za čtvrté: Jelikož výsledkem PHP skriptu je normální HTML
stránka, neměli byste se pouštět do práce v PHP, pokud alespoň zběžně
neznáte HTML.
Tyto technologie se můžete učit současně, ale není nad to naučit se
nejprve HTML a pak se pustit do PHP. Mimochodem, o HTML máme na
Linuxsoftu seriál.
A konečně za páté – jak jste asi
pochopili, když si budete chtít
vyzkoušet fungování skriptu ve skutečném světě, měli byste mít k
dispozici nějaký webový server. A právě o tom, co všechno byste měli
mít k dispozici pro práci s PHP bude další díl našeho seriálu.
Verze pro tisk
|
Příspívat do diskuze mohou pouze registrovaní uživatelé.
|
|

Vyhledávání software

Vyhledávání článků
28.11.2018 23:56 /František Kučera Prosincový sraz spolku OpenAlt se koná ve středu 5.12.2018 od 16:00 na adrese Zikova 1903/4, Praha 6. Tentokrát navštívíme organizaci CESNET. Na programu jsou dvě přednášky: Distribuované úložiště Ceph (Michal Strnad) a Plně šifrovaný disk na moderním systému (Ondřej Caletka). Následně se přesuneme do některé z nedalekých restaurací, kde budeme pokračovat v diskusi.
Komentářů: 1
12.11.2018 21:28 /Redakce Linuxsoft.cz 22. listopadu 2018 se koná v Praze na Karlově náměstí již pátý ročník konference s tématem Datová centra pro business, která nabídne odpovědi na aktuální a často řešené otázky: Jaké jsou aktuální trendy v oblasti datových center a jak je optimálně využít pro vlastní prospěch? Jak si zajistit odpovídající služby datových center? Podle jakých kritérií vybírat dodavatele služeb? Jak volit vhodné součásti infrastruktury při budování či rozšiřování vlastního datového centra? Jak efektivně datové centrum spravovat? Jak co nejlépe eliminovat možná rizika? apod. Příznivci LinuxSoftu mohou při registraci uplatnit kód LIN350, který jim přinese zvýhodněné vstupné s 50% slevou.
Přidat komentář
6.11.2018 2:04 /František Kučera Říjnový pražský sraz spolku OpenAlt se koná v listopadu – již tento čtvrtek – 8. 11. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma umění a technologie, IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
4.10.2018 21:30 /Ondřej Čečák LinuxDays 2018 již tento víkend, registrace je otevřená.
Přidat komentář
18.9.2018 23:30 /František Kučera Zářijový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 20. 9. 2018 od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Tentokrát bez oficiální přednášky, ale zato s dobrým jídlem a pivem – volná diskuse na téma IoT, CNC, svobodný software, hardware a další hračky.
Přidat komentář
9.9.2018 14:15 /Redakce Linuxsoft.cz 20.9.2018 proběhne v pražském Kongresovém centru Vavruška konference Mobilní řešení pro business.
Návštěvníci si vyslechnou mimo jiné přednášky na témata: Nejdůležitější aktuální trendy v oblasti mobilních technologií, správa a zabezpečení mobilních zařízení ve firmách, jak mobilně přistupovat k informačnímu systému firmy, kdy se vyplatí používat odolná mobilní zařízení nebo jak zabezpečit mobilní komunikaci.
Přidat komentář
12.8.2018 16:58 /František Kučera Srpnový pražský sraz spolku OpenAlt se koná ve čtvrtek – 16. 8. 2018 od 19:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát jsou tématem srazu databáze prezentaci svého projektu si pro nás připravil Standa Dzik. Dále bude prostor, abychom probrali nápady na využití IoT a sítě The Things Network, případně další témata.
Přidat komentář
16.7.2018 1:05 /František Kučera Červencový pražský sraz spolku OpenAlt se koná již tento čtvrtek – 19. 7. 2018 od 18:00 v Kavárně Ideál (Sázavská 30, Praha), kde máme rezervovaný salonek. Tentokrát bude přednáška na téma: automatizační nástroj Ansible, kterou si připravil Martin Vicián.
Přidat komentář
Více ...
Přidat zprávičku
 Poslední diskuze
31.7.2023 14:13 /
Linda Graham iPhone Services
30.11.2022 9:32 /
Kyle McDermott Hosting download unavailable
13.12.2018 10:57 /
Jan Mareš Re: zavináč
2.12.2018 23:56 /
František Kučera Sraz
5.10.2018 17:12 /
Jakub Kuljovsky Re: Jaký kurz a software by jste doporučili pro začínajcího kodéra?
Více ...
|