PHP (9.) - Funkce







    Funkce



Co to jsou funkce

   Funkci si můžeme představit jako úsek programu, který se má použít později. Funkci můžeme použít vždy tam, kde bychom opakovali stejný, nebo podobný kód. Funkce již znáte, používá je samo PHP a my si nyní ukážeme, jak vytvořit svojí vlastní.



Deklarace funkcí

 Funkce se vytvářejí pomocí klíčového slova function, za kterým následuje název (identifikátor) funkce. Pro ten platí stejná pravidla jako pro název proměnných. Poté je blok příkazů (tělo funkce), které se po zavolání provedou. Jako příklad si ukážeme jednoduchou funkci Pozdrav, která na stránku vypíše pozdrav. Poté ji hned zavoláme

function Pozdrav() {
	echo "<h1>Vítejte na mé stránce</h1>";
	}
Pozdrav();

A po příkazu Pozdrav(); nám vypíše(obecně proběhne kód funkce) "Vítejte na mé stránce."

Parametry funkcí

 Jak jste si mohli všimnout, za název funkce přibili kulaté závorky (Pozdrav()). Je to proto, že funkci se mohou předávat parametry. (Pokud funkce žádné parametry nemá, stejně se musí zadat!!!). Parametry jsou obyčejné proměnné, které se při zavolání naplní. Pro pochopení se ukážeme jednoduchou funkci VypisJmeno, která bude mít jeden parametr a ten (s úvodní větou) vypíše:

function VypisJmeno($jmeno) {
	echo "Tvé jméno je: $jmeno.";
	}
VypisJmeno("Vojtěch Zicha");

 Pokud budete chtít použít více parametrů, jednoduše je oddělíte čárkami, jak demonstruje tento příklad:

function Secti($cislo1, $cislo2) {
	echo "$cislo1 + $cislo2 = ".($cislo+$cislo2);
	}
Secti(2, 6);


Vrácená hodnota

 Co když však nebudeme chtít výsledek funkce vypsat (jako v předchozích příkladech), ale třeba vložit do jiné proměnné. Tehdy se uplatní tzv. vrácená hodnota. Označuje se klíčovým slovem return. Náš horní příklad by pak vypadal takto: 

function SectiAVrat($cislo1, $cislo2) {
	return $cislo+$cislo2;
	}
$vysledek = SectiAVrat(2, 6);

 Příkazů return můžeme použít i více, ale po jeho prvním použití funkce končí.



Standartní hodnoty parametrů

 Co když chceme třeba vytvořit funkci pro počítání mocnin. Mohla by vypadat nějak takhle:

function Umocni($cislo, $exponent) {
	$vysledek = $cislo;
	for($i=1;$i>$exponent;$i++)
		$vysledek *= $cislo;
         return $vysledek;
	}

 Teď sice funkce pracuje správně, ale většinou potřebujeme pouze 2 mocninu. K tomu nám poslouží tzv. standartní hodnoty parametrů. Pokud parametr nezadáme, uplatní se standartní hodnota, pokud použijeme, uplatní se hodnota zapsaná. Jednoduché, že? Zde je již mírně upravená verze funkce, která počítá s tím, že většinou používáme 2 mocninu.

function Umocni($cislo, $exponent = 2) {
	$vysledek = $cislo;
	for($i=1;$i>$exponent;$i++)
		$vysledek *= $cislo;
         return $vysledek;
	}

 Nyní můžeme použít 2 zápisy:

Umocni(10, 2); //použijí se zadané hodnoty
Umocni(10); //nic se neděje, exponent se nastavil na 2.


  <     >  


Autor: Vojtěch Zícha
publikováno: 17.7.2005

Scriptici.cz

- o tvorbě webových stránek (xHTML, HTML, CSS, PHP, JavaScript), scripty a programování (Python, C++)
Google
 
Web scriptici.titl.name