+ All Categories

Download - PHP

Transcript
Page 1: PHP

PHPPHP

Úvod do programováníÚvod do programování

Kontaktní údaje:Kontaktní údaje: Ing. Antonín SkopecIng. Antonín Skopec [email protected]

Page 2: PHP

PřehledPřehled Seznámení se s programováním dynamicky Seznámení se s programováním dynamicky

generovaných webových stránekgenerovaných webových stránek Jazyk PHP - princip, syntaxe, typy, konstanty a Jazyk PHP - princip, syntaxe, typy, konstanty a

proměnné, základní operátory a příkazy, proměnné, základní operátory a příkazy, implementované funkceimplementované funkce

Obsluha formulářů a jeho prvkůObsluha formulářů a jeho prvků Práce se soubory a složkamiPráce se soubory a složkami Odesílání emailu ze skriptu PHP, HTTP hlavičkyOdesílání emailu ze skriptu PHP, HTTP hlavičky Databázový server MySQL + správa dat v databáziDatabázový server MySQL + správa dat v databázi Spolupráce PHP s MySQL serveremSpolupráce PHP s MySQL serverem Praktické příkladyPraktické příklady Práce na zvoleném projektu + závěrečná Práce na zvoleném projektu + závěrečná

prezentaceprezentace

Page 3: PHP

Podmínky zápočtu/zkouškyPodmínky zápočtu/zkoušky

Seminární práce 75 bodůSeminární práce 75 bodů– prototyp 25 bodůprototyp 25 bodů– aplikace 50 bodůaplikace 50 bodů

Průběžné hodnocení a prezentace 25 Průběžné hodnocení a prezentace 25 bodůbodů

CELKEM 100 BODŮCELKEM 100 BODŮ– minimálně polovina z každé části prototyp, minimálně polovina z každé části prototyp,

aplikace, prezentaceaplikace, prezentace

Page 4: PHP

Seminární práce, hodnoceníSeminární práce, hodnocení

Vytvoření prototypu WWW aplikace (25)Vytvoření prototypu WWW aplikace (25)– návrh, e-mailem nebo na papíře (10)– návrh HTML stránky dle schváleného zadání (15)

Vytvoření aplikace (50)Vytvoření aplikace (50)– návrh databáze (10)– Přihlašování, formulář s validací, administrace (10)– Dynamický obsah (10)– RSS výstup (10)– Dokumentace (10)

Za každý započatý týden zpoždění Za každý započatý týden zpoždění oproti stanovenému termínu -5 bodů!oproti stanovenému termínu -5 bodů!

Page 5: PHP

WWW aplikaceWWW aplikace

Vyberte si, jakou aplikaci chcete dělat. Vyberte si, jakou aplikaci chcete dělat. Musí obsahovat:Musí obsahovat:– databázi, minimálně jedna vazba 1:Ndatabázi, minimálně jedna vazba 1:N– přihlašování uživatelůpřihlašování uživatelů– administrační rozhraní pro databázi, administrační rozhraní pro databázi,

formulářeformuláře– RSS výstupRSS výstup

Page 6: PHP

Příklady WWW aplikacePříklady WWW aplikace

Databáze článků (časopisDatabáze článků (časopis/vyd/vydáníání//článek)článek) Psi z útulku (útulkyPsi z útulku (útulky/lid/lidéé//psi)psi) Vhodné dárky (příležitostiVhodné dárky (příležitosti//dárkydárky/obchody/obchody)) Seznam Seznam www/www/obchodů obchodů

(Kategorie(Kategorie/region/obchod/region/obchod)) vlastní návrhvlastní návrh

Aplikaci navrhněte jednoduchou, práce bude Aplikaci navrhněte jednoduchou, práce bude hodně!hodně!

Page 7: PHP

TermínyTermíny PROTOTYPPROTOTYP do do 3030.10. .10. 2014 pošlete návrh své aplikace, rozsah A4 textu2014 pošlete návrh své aplikace, rozsah A4 textu do 20.11. 2014 pošlete e-mailem odkaz a soubory v zipdo 20.11. 2014 pošlete e-mailem odkaz a soubory v zip

APLIKACEAPLIKACE do 18.1. 2015, odevzdat aplikacido 18.1. 2015, odevzdat aplikaci napsat dokumentacinapsat dokumentaci e-mailem poslat odkaz na aplikaci online a zdrojový kód v zipe-mailem poslat odkaz na aplikaci online a zdrojový kód v zip ve zkouškovém období se dostavit k zápočtuve zkouškovém období se dostavit k zápočtu

Pracujte na úkolu průběžně, nejlépe o cvičeních k tomu Pracujte na úkolu průběžně, nejlépe o cvičeních k tomu určených!určených!

Page 8: PHP

OdkazyOdkazy

www.php.netwww.php.net - oficiální stránky PHP - oficiální stránky PHP www.pcsvet.cz/phpwww.pcsvet.cz/php - programování v - programování v

PHPPHP php.interval.czphp.interval.cz - základy PHP - základy PHP php.vrana.czphp.vrana.cz www.kosek.czwww.kosek.cz www.jakpsatweb.cz www.jakpsatweb.cz - kurz jazyka HTML - kurz jazyka HTML

a CSSa CSS

Page 9: PHP

Založení webu (příklad)Založení webu (příklad)

http://www.webzdarma.czhttp://www.webzdarma.cz Registrace a provoz domény zdarmaRegistrace a provoz domény zdarma Minimální zobrazování reklamMinimální zobrazování reklam Podpora jazyka PHP a databáze MySQLPodpora jazyka PHP a databáze MySQL Správa databáze pomocí prostředku Správa databáze pomocí prostředku

phpMyAdminphpMyAdmin Možnost odesílat e-mail pomocí PHP skriptuMožnost odesílat e-mail pomocí PHP skriptu Možnost uploadu stránek na server pomocí Možnost uploadu stránek na server pomocí

FTP protokoluFTP protokolu

Page 10: PHP

Doporučený editorDoporučený editor

PSPadPSPad Freeware editor webových stránekFreeware editor webových stránek Domovská stránka: Domovská stránka:

http://www.pspad.com/czhttp://www.pspad.com/cz

Page 11: PHP

HistorieHistorie

PHP je skriptovací jazyk na straně serveruPHP je skriptovací jazyk na straně serveru 1994 – Rasmus Lerdorf vytvořil kombinaci skriptů v 1994 – Rasmus Lerdorf vytvořil kombinaci skriptů v

Perlu pro sledování přístupu na vlastní web stránku, Perlu pro sledování přístupu na vlastní web stránku, požadavky na zlepšení požadavky na zlepšení →→„„Personal Home Page tools“ Personal Home Page tools“ později „Personal Home Page Construction Kit“později „Personal Home Page Construction Kit“

1995 – PHP/FI 2.0 : skriptovací jádro + analýza 1995 – PHP/FI 2.0 : skriptovací jádro + analýza vstupu z formulářů + obsluha sql serveru vstupu z formulářů + obsluha sql serveru

1997 - PHP 3.0: vytvořili Andi Gutmans a Zeev 1997 - PHP 3.0: vytvořili Andi Gutmans a Zeev Suraski. Původní zkratka dostává nový významSuraski. Původní zkratka dostává nový význam →→„ „ PHP: Hypertext Preprocessor“PHP: Hypertext Preprocessor“

Page 12: PHP

HistorieHistorie

2000 – PHP 4.0 : podpora pro mnoho WWW serverů, 2000 – PHP 4.0 : podpora pro mnoho WWW serverů, HTTP sessions, buffering výstupu, bezpečnější HTTP sessions, buffering výstupu, bezpečnější způsoby zpracování vstupů uživatele a nové způsoby zpracování vstupů uživatele a nové jazykové konstruktyjazykové konstrukty

2004 – PHP 5.0 : podpora objektově orientovaného 2004 – PHP 5.0 : podpora objektově orientovaného programováníprogramování

Page 13: PHP

Proč PHP ANO?Proč PHP ANO? Získávání dat z formulářů a práce s těmito datyZískávání dat z formulářů a práce s těmito daty Dynamické generování stránek na základě získaných Dynamické generování stránek na základě získaných

datdat Široká spolupráce s databázemiŠiroká spolupráce s databázemi Podpora protokolů HTTP, FTP, SMTP, POP3, atd.Podpora protokolů HTTP, FTP, SMTP, POP3, atd. Obsahuje knihovny funkcí pro práci s textovými řetězci, Obsahuje knihovny funkcí pro práci s textovými řetězci,

obrázky, datem a časem, soubory a složkami, aj.obrázky, datem a časem, soubory a složkami, aj. Obsahuje knihovnu matematických funkcíObsahuje knihovnu matematických funkcí Skripty jsou prováděny na straně serveru - stažená Skripty jsou prováděny na straně serveru - stažená

stránka z www serveru tedy neobsahuje zdrojové kódy stránka z www serveru tedy neobsahuje zdrojové kódy PHP skriptů. PHP skriptů.

Velmi svobodná licenceVelmi svobodná licence

Page 14: PHP

Proč PHP NE?Proč PHP NE?

Interpretovaný ne kompilovaný jazykInterpretovaný ne kompilovaný jazyk PHP skripty v textové podoběPHP skripty v textové podobě Neexistuje kompletní definice, je Neexistuje kompletní definice, je

popsána jen implementacepopsána jen implementace Nekonzistentní pojmenování funkcíNekonzistentní pojmenování funkcí Nejednotné pořadí parametrůNejednotné pořadí parametrů Slabší podpora UNICODESlabší podpora UNICODE

Page 15: PHP

K čemu PHP?K čemu PHP?

Firemní prezentace Firemní prezentace Podnikové informační systémy Podnikové informační systémy Internetové obchody Internetové obchody Redakční systémy Redakční systémy Diskusní fóra Diskusní fóra Dynamické osobní stránky Dynamické osobní stránky Webklienti pro poštu i dbWebklienti pro poštu i db Počitadla, ankety …Počitadla, ankety …

Page 16: PHP

HTMLHTML

1. Webový server přečte požadavek prohlížeče

Co se děje se stránkami psanými čistě v HTML kódu ?

2. Nalezne stránku na serveru

3. Odešle stránku přes internet zpět prohlížeči

4. Prohlížeč interpretuje HTML kód a zobrazí webovou stránku

Page 17: PHP

PHPPHP

1. Webový server přečte požadavek prohlížeče

Co se děje se stránkami obsahujícími PHP kód ?

2. Nalezne stránku na serveru

3. Provede instrukce PHP pro modifikaci webové stránky

5. Prohlížeč interpretuje HTML kód a zobrazí webovou stránku

4. Odešle stránku přes internet zpět prohlížeči (čisté HTML)

Page 18: PHP

Základy PHPZáklady PHP

PHP kód se zapisuje v textovém tvaruPHP kód se zapisuje v textovém tvaru PHP interpret (běžícím na webovém serveru) PHP interpret (běžícím na webovém serveru)

kód překládá a posílá do klienta (prohlížeče) kód překládá a posílá do klienta (prohlížeče) hotový html kódhotový html kód

skripty (podobně jako .asp) narozdíl od skripty (podobně jako .asp) narozdíl od JavaScriptu provádí serverJavaScriptu provádí server

nezatěžuje vlastní počítač - náročný na nezatěžuje vlastní počítač - náročný na komunikaci se serveremkomunikaci se serverem

př. webový server nejprve spočítá kolik je př. webový server nejprve spočítá kolik je 300/30 a pak prohlížeči odešle jen výsledek 300/30 a pak prohlížeči odešle jen výsledek tj. číslo 10tj. číslo 10

Page 19: PHP

Základy syntaxeZáklady syntaxe NNáázev souboru webovzev souboru webovéé str stráánky stadnardně obsahuje nky stadnardně obsahuje

přpřííponu "php" nebo ponu "php" nebo „„phtmlphtml““ (např. index.php) (např. index.php)(! může mít jakoukoliv jinou, dle nastavení v (! může mít jakoukoliv jinou, dle nastavení v

konfiguračních souborech)konfiguračních souborech) ZačleněnZačleněníí PHP skriptu do (X)HTML k PHP skriptu do (X)HTML kóódu webovdu webovéé str stráánkynky

<?php<?php echo "ahoj"; echo "ahoj"; ?>?>

DalDalšíší možnosti (nedoporučuje se použivat): možnosti (nedoporučuje se použivat):

a)a) <?<? echo "ahoj"; echo "ahoj"; ?>?>

b) b) <script language="php"> <script language="php"> echo "ahoj"; echo "ahoj"; </script> </script>

c) c) <%<% echo "ahoj"; echo "ahoj"; %>%>

Page 20: PHP

Základy syntaxeZáklady syntaxe

PHP nerozlišuje u speciálních slov a funkcí PHP nerozlišuje u speciálních slov a funkcí velikost písmen: echo = Echo = eChOvelikost písmen: echo = Echo = eChO

U názvů funkcí to platí také: PHPInfo() = U názvů funkcí to platí také: PHPInfo() = phpinfo()phpinfo()

Neplatí to u proměnných:Neplatí to u proměnných:

$jmeno$jmeno není to samé, co není to samé, co $Jmeno$Jmeno PHP ignoruje mezery, tabulátory a odřádkování, PHP ignoruje mezery, tabulátory a odřádkování,

ty jsou pouze pro přehlednost v kóduty jsou pouze pro přehlednost v kódu Nelze psát mezery do názvů funkcí, proměnných Nelze psát mezery do názvů funkcí, proměnných

apod. apod.

Page 21: PHP

Základy syntaxeZáklady syntaxe

Oddělení instrukcíOddělení instrukcí

Page 22: PHP

Základy syntaxeZáklady syntaxe KomentářeKomentáře

<?php<?php

  // Text za dvojitým lomítkem je až do konce řádku ignorován.  // Text za dvojitým lomítkem je až do konce řádku ignorován.....

  # Druhý způsob komentáře na jeden řádek...  # Druhý způsob komentáře na jeden řádek...

  /*  /*    Víceřádkový komentář.    Víceřádkový komentář.    Často se používá pro vyřazení bloku kódu PHP,    Často se používá pro vyřazení bloku kódu PHP,    který momentálně nechceme použít.    který momentálně nechceme použít.  */  */

?> ?>

Page 23: PHP

První příkladPrvní příklad

<<?php ?php phpinfo();phpinfo(); ? ?>>

Page 24: PHP

ECHOECHO

Příkaz Příkaz echoecho slouží k výpisu: slouží k výpisu:

jednotlivých textových znaků a jednotlivých textových znaků a řetězcůřetězců

HTML kóduHTML kódu konstant konstant obsahu proměnnýchobsahu proměnných

Lze použít i funkci Lze použít i funkci print()print()

Page 25: PHP

ECHO příkladyECHO příklady<?php<?php

$Sirka = 640;$Sirka = 640;$Vyska = 480;$Vyska = 480;

// Vkládání do HTML:// Vkládání do HTML:?>?><img src="obrazek.png" width="<?php echo $Sirka; ?>" height="<?php echo $Vyska; ?<img src="obrazek.png" width="<?php echo $Sirka; ?>" height="<?php echo $Vyska; ?

>" alt="Obrázek">>" alt="Obrázek">

<?php<?php

/* Generování celého HTML *//* Generování celého HTML */

// Vypsání více parametrů:// Vypsání více parametrů:echo '<img src="obrazek.png" width="', $Sirka, '" height="', $Vyska, '" alt="Obrázek">'echo '<img src="obrazek.png" width="', $Sirka, '" height="', $Vyska, '" alt="Obrázek">';;

// Spojování řetězců pomocí operátoru . (tečka):// Spojování řetězců pomocí operátoru . (tečka):echo '<img src="obrazek.png" width="' . $Sirka . '" height="' . $Vyska . '" alt="Obrázek"echo '<img src="obrazek.png" width="' . $Sirka . '" height="' . $Vyska . '" alt="Obrázek">';>';

?> ?>

Page 26: PHP

KonstantyKonstanty

obsah se později ve skriptu nedá změnitobsah se později ve skriptu nedá změnit narozdíl od proměnných názvy konstant nezačínají znakem narozdíl od proměnných názvy konstant nezačínají znakem $,$,

zvykem je psát názvy konstant velkými písmenyzvykem je psát názvy konstant velkými písmeny PHP obsahuje i několik předdefinovaných konstant, například PHP obsahuje i několik předdefinovaných konstant, například

PHP_OSPHP_OS

define(define('SPOLECNOST','SPOLECNOST',  ‚VOŠIS Praha‚VOŠIS Praha');');

define('define('PRODUKTPRODUKT', ', ‚Vyuka PHP‚Vyuka PHP');');

define('define('VERZEVERZE', ', 20112011););

echo echo SPOLECNOSTSPOLECNOST, ' představuje svůj nový produkt ', , ' představuje svůj nový produkt ', PRODUKTPRODUKT, , ' ve verzi ', ' ve verzi ', VERZEVERZE, '.'; , '.';

Page 27: PHP

ProměnnéProměnné Proměnné slouží k uchovávání hodnot, které lze během Proměnné slouží k uchovávání hodnot, které lze během

provádění skriptu provádění skriptu měnitměnit.. Proměnné začínají znakem $ (dolar), např. $soucetProměnné začínají znakem $ (dolar), např. $soucet

Pravidla pro název proměnnéPravidla pro název proměnné V názvu proměnné nepoužívat diakritikuV názvu proměnné nepoužívat diakritiku PHP rozlišuje velká a malá písmena v názvu!!!PHP rozlišuje velká a malá písmena v názvu!!! Název proměnné nesmí začínat číslicí nebo speciálními znaky, Název proměnné nesmí začínat číslicí nebo speciálními znaky,

uvnitř názvu lze použit číslici (např. $promenna1).uvnitř názvu lze použit číslici (např. $promenna1). $mojepromenna$mojepromenna a a $MojePromenna$MojePromenna nejsou stejné! nejsou stejné! jednopísmenné názvy jednopísmenné názvy ne!ne! – po týdnu nevím, co je proměnná – po týdnu nevím, co je proměnná

$d a $g ?$d a $g ? příliš dlouhé názvy příliš dlouhé názvy ne!ne! –snadněji se udělá chyba –snadněji se udělá chyba sebepopisující názvy, jeden jazyk sebepopisující názvy, jeden jazyk

- četina bez hacku a carek- četina bez hacku a carek- angličtina- angličtina

Page 28: PHP

Přiřazení hodnotyPřiřazení hodnoty

$promenna$promenna=2=2;;

$$text_promtext_prom="="Zdravím VásZdravím Vás"";;

Výpis hodnoty proměnnéVýpis hodnoty proměnné

echoecho $$promennapromenna;;

echoecho ""Toto je moje proměnná: Toto je moje proměnná: $$promennapromenna";";

echoecho ""Je mi Je mi $$narozennarozen let. let.";";

echoecho ""Je mi Je mi ""..$$narozennarozen.." " let.let.";";

echoecho ""Je mi Je mi <<strongstrong>">"..$$narozennarozen..“</“</strongstrong> > let.let.";";

Page 29: PHP

Jednoduché typy Jednoduché typy proměnnýchproměnných

Typy proměnných: integer, double, string, boolean, array, objectTypy proměnných: integer, double, string, boolean, array, object

$a = 1$a = 1;; // // $a $a je typ integer (celé číslo)je typ integer (celé číslo)

$a = 1$a = 1.5;.5; // // $a $a je typ double (desetinné číslo)je typ double (desetinné číslo)

$a = $a = 1e-3;1e-3; // // $a $a je typ double (je typ double ($a $a = 0.001= 0.001))

$a = “$a = “nějaký textnějaký text””;; // // $a $a je znakový řetězec (také je znakový řetězec (také $a = “1”$a = “1”;;))

$a = $a = TRUE;TRUE; // // $a $a logický typ logický typ “pravda” “pravda” (FALSE - nepravda)(FALSE - nepravda)

Čísla lze zapisovat také v šestnáctkové soustavě:Čísla lze zapisovat také v šestnáctkové soustavě:

$a = $a = 0xFF;0xFF; // v // v $a $a bude uložena hodnota 255bude uložena hodnota 255

Page 30: PHP

String (řetězec)String (řetězec) Textové řetězce uzavíráme do Textové řetězce uzavíráme do uvozovekuvozovek ( (“text”“text”)) nebo nebo

apostrofapostrofůů ( (‘text’‘text’)) SpojovSpojování řetězců se provádí pomocí tečky:ání řetězců se provádí pomocí tečky:

$jmeno$jmeno=”=”AntonínAntonín”;”;

$prijmeni$prijmeni=”=”SkopecSkopec”;”;

echo echo ““Zadali jste toto jméno: Zadali jste toto jméno: ””..$jmeno$jmeno..“ ”“ ”..

$prijmeni$prijmeni;;

Page 31: PHP

Psaní speciálních znakůPsaní speciálních znaků

\\\\ znak zpětné lomítko – znak zpětné lomítko – ‘ \ ’‘ \ ’

\n\n novnová řádka – obdoba tagu á řádka – obdoba tagu <br> v <br> v HTMLHTML

\t\t tabultabulátorátor

\”\” znak znak uvouvozovky – zovky – ‘ ” ’‘ ” ’

\$\$ znak dolar – znak dolar – ‘ $ ’‘ $ ’

$a=20$a=20;;

echo echo ““V promV proměnné ěnné \$a\$a je ulo je uložena žena hodnotahodnota $a$a””;;

Page 32: PHP

Střídání uvozovek a Střídání uvozovek a apostrofůapostrofů

<?php<?php

   /* Apostrofy */ /* Apostrofy */

  // echo   // echo 'I'd like to tell you: "You're the most interesting man I've ever met."';'I'd like to tell you: "You're the most interesting man I've ever met."';  // Toto by bylo špatně.  // Toto by bylo špatně.

  echo   echo 'I\'d like to tell you: "You\'re the most interesting man I\'ve ever met."''I\'d like to tell you: "You\'re the most interesting man I\'ve ever met."';;  // Toto je správně.  // Toto je správně.

  /* Uvozovky */  /* Uvozovky */

   // echo  // echo "I'd like to tell you: "You're the most interesting man I've ever met."""I'd like to tell you: "You're the most interesting man I've ever met."";;  // Toto by bylo špatně.  // Toto by bylo špatně.

  echo  echo "I'd like to tell you: \"You're the most interesting man I've ever met.\"" "I'd like to tell you: \"You're the most interesting man I've ever met.\"";;   // Toto je správně. // Toto je správně.

?> ?>

Page 33: PHP

OdřádkováníOdřádkování v řetězci mezi apostrofy či uvozovkami můžete odřádkovat enterem, vše se v řetězci mezi apostrofy či uvozovkami můžete odřádkovat enterem, vše se

promítne do HTML kódu promítne do HTML kódu

Operační systémOperační systém SekvenceSekvence

WindowsWindows \r\n\r\n

LinuxLinux \n\n

Mac OSMac OS \r\r

Místo odřádkování enterem uvnitř řetězce je však mnohdy lepší pro znak Místo odřádkování enterem uvnitř řetězce je však mnohdy lepší pro znak nového řádku v PHP použít danou escape sekvenci nového řádku v PHP použít danou escape sekvenci

POZOR, tato sekvence se převede na odřádkování pouze v případě, že je POZOR, tato sekvence se převede na odřádkování pouze v případě, že je vypsána v uvozovkách!!!vypsána v uvozovkách!!!

Page 34: PHP

Odřádkování pomocí Odřádkování pomocí sekvencísekvencí

Operační systémOperační systém SekvenceSekvenceWindowsWindows \r\n\r\nLinuxLinux \n\nMac OSMac OS \r\r

POZOR, tato sekvence se převede na odřádkování pouze v případě, že je vypsána v uvozovkách!!!POZOR, tato sekvence se převede na odřádkování pouze v případě, že je vypsána v uvozovkách!!!

<?php<?php

  echo '  echo 'řádek 1<br>\r\nřádek 2<br>\r\nřádek3řádek 1<br>\r\nřádek 2<br>\r\nřádek3';';   /* /*    Vypíše \r\n literárně:    Vypíše \r\n literárně:

    řádek 1<br>\r\nřádek 2<br>\r\nřádek3    řádek 1<br>\r\nřádek 2<br>\r\nřádek3  */  */

  echo "  echo "řádek 1<br>\r\nřádek 2<br>\r\nřádek 3řádek 1<br>\r\nřádek 2<br>\r\nřádek 3";";    /*/*    Sekvence \r\n je převedena na odřádkování:    Sekvence \r\n je převedena na odřádkování:

    řádek 1<br>    řádek 1<br>    řádek 2<br>    řádek 2<br>    řádek 3    řádek 3  */  */

?> ?>

Page 35: PHP

Odřádkování pomocí Odřádkování pomocí konstantykonstanty

Lepší je definice pomocí konstantyLepší je definice pomocí konstanty<?php<?php

  define(  define('NL''NL', , "\r\n""\r\n"););

  echo   echo 'řádek 1','řádek 1', NL; NL;  echo   echo 'řádek 2''řádek 2';;  echo NL;  echo NL;  echo   echo 'řádek 3''řádek 3';;

?> ?>

Page 36: PHP

Výpis proměnnéVýpis proměnné

Proměnnou vypisujeme pomocí příkazu echo(): Proměnnou vypisujeme pomocí příkazu echo():

$dolar="1$"; $dolar="1$"; echo $dolar;echo $dolar; echo "$dolar"; echo "$dolar"; echo "mám jen" . $dolar . "<br />";echo "mám jen" . $dolar . "<br />"; echo "nemám ani $dolar" ; echo "nemám ani $dolar" ;

složitější, ale předejde se případným složitější, ale předejde se případným komplikacím:komplikacím:obyčejný text se píše do uvozovek a od proměnné odděluje obyčejný text se píše do uvozovek a od proměnné odděluje tečkou tečkou

Page 37: PHP

Expanze proměnnéExpanze proměnné <?php<?php

  $Jmeno =   $Jmeno = 'Tereza''Tereza';;

  echo   echo 'Jmenuji se $Jmeno.''Jmenuji se $Jmeno.';;  // Vypíše: Jmenuji se $Jmeno.  // Vypíše: Jmenuji se $Jmeno.

  echo   echo "Jmenuji se $Jmeno.""Jmenuji se $Jmeno.";;  // Vypíše: Jmenuji se Tereza.  // Vypíše: Jmenuji se Tereza.

?> ?> <?php <?php

$Jmeno = $Jmeno = 'Tereza''Tereza';;

  echo   echo "Obsah proměnné \$Jmeno je $Jmeno""Obsah proměnné \$Jmeno je $Jmeno";;   // Vypíše: Obsah proměnné $Jmeno je Tereza // Vypíše: Obsah proměnné $Jmeno je Tereza

   // Poněkud lepší řešení: // Poněkud lepší řešení:  echo   echo 'Obsah proměnné $Jmeno je ', $Jmeno'Obsah proměnné $Jmeno je ', $Jmeno;;

?>?> První výskyt proměnné První výskyt proměnné $Jmeno$Jmeno je uvozen zpětným lomítkem, takže se vypíše je uvozen zpětným lomítkem, takže se vypíše

literárně literárně "$Jmeno""$Jmeno". Druhý výskyt již zpětným lomítkem uvozen není, takže je . Druhý výskyt již zpětným lomítkem uvozen není, takže je proměnná proměnná $Jmeno$Jmeno nahrazena svým obsahem. V tomto případě nahrazena svým obsahem. V tomto případě "Tereza""Tereza". .

Page 38: PHP

ÚÚkolkol s použitím příkazů echo(), escape sekvencí a html s použitím příkazů echo(), escape sekvencí a html

tagůtagů napište skript, který zobrazí v okně prohlížeče napište skript, který zobrazí v okně prohlížeče tento text:tento text:

každý řádek okomentujtekaždý řádek okomentujte


Top Related