Úvod do PHP
PHP – je serverový skriptovací jazyk, sloužící k vytvoření dynamických WWW stránek. Jedná se o bezplatný (open source) nástroj. PHP se dá využívat k tvorbě dynamických WWW stránek, blogů, sociálních sítí, redakčních systémů a podobně.
PHP soubor obsahuje koncovku .php
Příklad: index.php, dokument.php, galerie.php
Hlavní charakteristika jazyka PHP
- je jednoduchý
- je open source
- běží na všech platformách
- podporuje databáze a práce s nimi
- je serverový – běží na většině serverů
- současná verze je PHP 5.2
- není case sensitive, ale proměnné jsou case sensitive
PHP jako součást www stránky
<html>
<body>
<h1>Můj první PHP skript</h1>
<?php
echo „Hello World!“;
?>
</body></html>
Proměnná v PHP
Proměnná je místo v paměti, které může uchovávat nějaké hodnoty. PHP nedeklaruje (Deklarace je v programování přiřazení hodnoty a typu proměnné) typ proměnné (text, číslo, desetinné číslo,..). Proměnná je deklarovaná při prvním použití.
Každý programovací jazyk používá proměnné. V proměnných se ukládají informace, výsledky, kterým říkáme hodnoty. Proměnná by měla mít své jméno, hodnotu a měli bychom znát s jakým typem proměnné pracujeme (číslo, text, desetinné číslo,…). V PHP nás při definování proměnné zajímá pouze její jméno a hodnota. Typ se přiřadí automaticky – nemusíme přiřazovat typ proměnné.
DEKLARACE proměnné – vytváření proměnné
INICIALIZACE proměnné – dosazení hodnoty do proměnné
V PHP se proměnná definuje znakem $.
PHP má 3 rozdílné typy proměnných podle rozsahu
• lokální
• globální
• statickou
Proměnná definovaná mimo funkci je globální, proměnná definovaná uvnitř funkce je lokální.
<?php
$text = „Nové Město na Moravě“;
$x = 50;
$y = 11.2;
?>
- proměnná začíná znakem $
- jméno musí začínat písmenem anebo podtržítkem, nesmí začínat číslem
- pozor na rozlišování velkých a malých písmen
Výpis proměnné
<?php
$text=“Ahoj světe!!“;
echo $text;
?>
Jakého typu je proměnná?
Využijeme funkci var_dump().
<?php
$a=10;
$b=20;
$c=$a+$b;
echo $c;
var_dump($c)
?>
Operátory
+ | sčítání |
* | násobení |
/ | dělení |
– | odčítání |
= | přiřazení |
== | testování shodnosti |
> | větší |
< | menší |
>= | větší nebo se rovná |
<= | menší nebo se rovná |
!= | se nerovná |
OR | nebo |
|| | nebo[1] |
AND | a současně |
&& | a současně |
[1] pravý ALT+W
Formuláře
Formuláře v PHP slouží k tomu, aby mohl uživatel na webové stránce něco vyplnit a poslat tyto informace na server, který je pak zpracuje. To znamená, že když například vyplníš jméno, heslo nebo nějaký vzkaz do formuláře a klikneš na tlačítko „Odeslat,“ server tyto informace přijme a podle toho může udělat různé věci:
- Sběr informací: Pomáhají získat informace od uživatele, jako je jméno nebo zpráva, které se pak mohou uložit a dál používat.
- Přihlášení a registrace: Můžeš se přihlásit nebo vytvořit účet, pokud zadáš své údaje do formuláře.
- Získání odpovědí nebo výsledků: Učitelé nebo tvůrci stránek můžou použít formuláře, aby získali odpovědi a pak ti ukázali výsledky nebo odpovědi na základě toho, co jsi vyplnil.
- Bezpečnost a kontrola: Umožňují serveru zkontrolovat, jestli bylo všechno vyplněno správně a jestli jsou informace bezpečné.
Jednoduše řečeno, formuláře umožňují webu, aby „mluvil“ s uživatelem a mohl dělat akce podle toho, co uživatel zadal.
Ukázka jednoduchého formuláře
<form method=“POST“ action=“index.php“>
<input type=“number“ name=“cislo“ required>
<input type=“text“ name=“jmeno“ required>
<input type=“submit“>
</form>
Odkaz na jednoduchý skript s formulářem ZDE
Ten stejný skript s náročnějším zpracováním ZDE
Větvení programu
- Prakticky každý složitější program se větví
- Zavádíme příkazy pro větvení programu
- Tyto příkazy porovnávají hodnoty proměnných a podle porovnání pokračují dál
- Základní příkazy jsou IF – ELSE
IF – KDYŽ
Jedná se o základní typ „porovnávací konstrukce“. Když je hodnota taková, proveď toto, jinak proveď něco jiného.
IF – ELSE
Když budeme chtít provést určitý příkaz i v případě, když nebude vyhovovat podmínka, použijeme příkaz else. Jedná se o úplný příkaz, kdy určíme co se má stát i v případě, že podmínka neplatí.
Logické operátory
Logické operátory využijeme při rozhodování, zda se nachází v proměnné určitá hodnota a nebo když se například hodnoty proměnných rovnají.
Zápis
<?php
$cislo=5;
If(cislo==5)
{echo „Dneska je krásný den“}
?>
<?
$a = 5;
if ($a == 5)
{
echo "Proměnná má hodnotu 5 !";
echo "<br>";
echo "Není to úžasné?";
}
else
{
echo "Proměnná nemá hodnotu 5";
}
?>
Cyklus (smyčka, loop)
V programování chceme často docílit toho, aby se vykonával stejný kód stále dokola. Můžeme toho docílit tak, že budeme zapisovat stále stejné kódy za sebou, nebo využijeme cyklu.
Cyklus se vykonává v programu tak dlouho, dokud bude splněna nějaká podmínka. Lze hledat souvislost s příklady v běžném životě:
- Při svém večerním tréningu budu běhat na stadiónu tolik koleček, dokud neuběhnu 5 km.
- Řekni 5x „Programuji v Pythonu“.
Při programování cyklu musíme dbát na to, aby byl cyklus vždy konečný. To zajistíme tak, že po každém cyklu zvýšíme hodnotu proměnné o 1 (i+=1).
V PYTHONU je cyklus zabezpečen dvěma příkazy:
- WHILE
- DO…WHILE
- FOR
- FOREACH
WHILE
<?php
$teplota = 1;
while($teplota <= 10)
{
echo „$teplota“;
$x++;
}
?>
Proměnná typu pole
Proměnná typu pole je zvláštní druh proměnné, která má více hodnot. K jednotlivým hodnotám pole se dostaneme přes INDEX, což je číslo, udávající pořadí hodnoty v poli od nuly .
Proměnná typu pole je speciální proměnná, která může mít víc než jednu hodnotu!
Příklad 1 – definice proměnné typu pole a výpis nějaké hodnoty
$cars = array("Volvo", "BMW", "Toyota");
//může se definovat také pomocí závorek $cars = ["Volvo", "BMW", "Toyota"];
//raději používejte hranaté závorky, je to modernější;
echo = [2];
//vypíše se 2. hodnota v poli, tedy Toyota.
Příklad 2 – definice proměnné typu pole a výpis nějaké hodnoty
$zelenina=["mrkev", "rajče", "paprika", "cuketa", "lilek" ];
echo $zelenina[2]."<br>";
echo $zelenina[4]."<br>";
Příklad 3 – výpis všech hodnot z pole pomocí FOREACH
$ovoce=[„jablko“, „hruška“, „švestka“, „broskev“, „citrón“ ];
foreach ($ovoce as $hodnota) {
echo $item . "\n";
}
//foreach říká:
• „Vezmi každé jméno z pole $ovoce a dočasně ho ulož do proměnné $hodnota.“
• Potom udělej něco s touto hodnotou (v našem případě ji vypiš).
Příklad 4 – výpočet počtu prvků v poli – COUNT
$ovoce=["jablko", "hruška", "švestka", "broskev", "citrón" ];
echo count($ovoce);
//vypíše se hodnota 5
Příklad 5 – odstranění prvku v poli- UNSET
$ovoce=["jablko", "hruška", "švestka", "broskev", "citrón" ];
unset($ovoce[1]); // Odstraní druhý prvek
Příklad 6 – vložení prvku do pole – UNSET
$ovoce=["jablko", "hruška", "švestka", "broskev", "citrón" ];
$ovoce[] = "meruňka";
// Přidá hodnotu na konec pole
Příklad 7 – kontrola, zda je prvek v poli – in_array()
Použijeme například:
- při kontrole oprávnění uživatelů,
- při filtrování povolených adres (např. IP whitelist)
- při jednoduchém řízení přístupu do databáze
<?php
$uzivatele = ["Ivetka", "Petr", "Jana", "Lukáš"];
// Uživatel, kterého chceme zkontrolovat
$zadany_uzivatel = "Ivetka";
// Zkontrolujeme, jestli je uživatel na seznamu
if (in_array($zadany_uzivatel,$uzivatele)) {
echo "Vítej, $zadany_uzivatel! Máš přístup.";
} else {
echo "Promiň, $zadany_uzivatel. Přístup zamítnut.";
}
?>
Příklad 8 – proměnná typu pole ve SCRATCH
V programovacím prostředí SCRATCH se používá pro proměnnou pole spíše pojem SEZNAM.
Funkce
Funkce je kus kódu, který se po zavolání funkce vykoná. Funkce se zavádějí pro zjednodušení kódu a může se vykonat opakovaně.
Funkce mohou být:
- vnitřní – jsou už vytvořené funkce v PHP (více než 1000!)
- vlastní – vytvářím vlastní funkci
#Příklad funkce bez parametru
<?php
function pozdrav() {
echo "Ahoj, jak se máš?";
}
pozdrav();
?>
#Příklad funkce s parametrem
<?php
function prijmeni($fname) {
echo "$fname Novak.<br>";
}
prijmeni("Jana");
prijmeni("Petr");
prijmeni("Františka");
prijmeni("Alena");
prijmeni("Bořivoj");
?>
<?php
function soucet($a,$b) {
echo $a+$b."<br>";
}
soucet(10,20);
?>