PHP - funkce

Funkce je jakousi zkratkou pro větší počet procesů, pokud je nechceme vypisovat celé.

Deklarace funkce

Pokud umíte pracovat s funkcemi v Javascriptu, budou pro vás funkce v PHP snadné. Kromě předem zavedených a vyhrazených funkcí PHP, si můžete deklarovat své vlastní:

function napis(){
echo("ahoj");
}

function deklaruje funkci, napis je název funkce, (názvy pište bez diakritiky). U názvu funkce je třeba si dát pozor, aby se její název nekryl s názvem již zavedené funkce PHP (nemůžete použít např. echo, return...). V závorkách jsou uvedené argumenty funkce. /Funkce může být i bez argumentu. Složené závorky{ } vymezují procesy funkce (složené závorky zapíšete pomocí SHIFT + [ú] a SHIFT + [)] nebo pomocí PRAVÝ ALT + [F] a PRAVÝ ALT + [G]).

Kdykoli zavoláme tuto funkci skript vypíše ahoj. Taková funkce se nám může hodit, pokud třeba chceme opakovaně vypisovat nějaký delší text, nebo část zdrojového kódu.

Vyvolání funkce

Nyní jsme deklarovali funkci, ale teď ji chceme vyvolat:

napis();

Zapíšeme pouze název funkce a závorky. Skript vypíše 'ahoj'.

Funkce bez argumentu

Je již zmíněná funkce napis(), která nemá uvnitř závorek žádný argument(proměnnou).

Funkce s argumentem

Kdybychom chtěli někdy napsat 'ahoj', jindy 'dobrý den', nebo něco úplně jiného, použijeme funkci s argumentem.

function napis($jmeno){
echo($jmeno);
}
napis("dobrý večer"); //napíše dobrý večer
napis("ahoj"); //napíše ahoj
napis("dobré ráno"); //napíše dobré ráno

Deklarace je úplně stejná až na argument $jmeno. Ten zavádí proměnnou $jmeno. Když jsme vyvolali funkci a jako její argument jsme uvedli "dobrý večer" a "ahoj", byly tyto hodnoty přiřazeny k proměnné $jmeno, následně je funkce zapíše.

Funkce vracející hodnotu, příkaz return

Můžete také zavést funkci, která bude vrací hodnotu:

function vrat($cislo){
return $cislo*2;
}
echo(vrat(20));
echo(vrat(100)/vrat(10));

Funkce vrat(); příkazem return vrácí $cislo*2 (tedy vrací dvojnásobek zadané hodnoty). S danou funkcí lze potom nakládat jako s proměnnou, počítat s ní, vypisovat ji atd.

Globální proměnné

Pracujeme-li uvnitř funkce s proměnnými, které jsou definované mimo tělo funkce, je třeba k nim přistupovat trochu odlišně:

<?php 
$name = "Simon";
function jm(){
echo $GLOBALS['name'];
}
jm();
?>

Pomocí $GLOBALS přistupujeme k proměnné deklarované vně funkce.

Další: PHP pole



Doporučuji
Pro své weby používám *Webhosting C4: 20 GB prostoru, PHP, MySQL, e-maily, subdomény za 1200 Kč (zdarma 2 GB navíc každý rok). Více WebhostingC4.cz.
Potřebujete poradit?


Vyhledávání


Poradna

Pokud si nevíte rady, chcete kontakt na spolehlivého tvůrce webu, či vás zajímá cizí názor, ozvěte se.

Reklama