Základy PHP 1 | PHP Slovníček

Funkce v PHP

Ilustrativní foto

Tip: Kódy si můžete vyzkoušet na PHP Playground.

Vestavěné PHP funkce

POZOR

PHP obsahuje více než 1000 vestavěných funkcí pro nejčastější potřeby programátorů.

POZOR

Přehled vestavěných PHP funkcí najdete např. na W3Schools.

Každou z vestavěných PHP funkcí, kterou potřebujete použít, je potřeba si nastudovat.
Např. funkci date si můžete nastudovat na W3Schools.com.

<?php 
  // Parametr 'N' vrací číslo dne v týdnu 1-7 (1=pondělí, 7=neděle)
  echo date('N') . '<br>' ;

  // Parametr 'w' vrací číslo dne v týdnu 0-6 (0=neděle, 6=sobota)
  echo date('w') . '<br>' ;
  
  // Parametr 'd. m. Y' vrací aktuální datum (DD. MM. RRRR)
  echo date('d. m. Y') . '<br>' ;
  
  // Parametr 'H:i:s' vrací aktuální čas (HH:MM:SS)
  echo date('H:i:s') . '<br>' ;

  // POZOR: Na php-play.dev je "anglický" čas, tj. o hodinu méně než v Čechách
?>

Jiná vestavěná funkce je např. sqrt() (druhá odmocnina).

<?php 
  // Parametr 4 se odmocní - vypíše se 2
  echo sqrt(4) . '<br>' ;

  // Parametr 9 se odmocní - vypíše se 3
  echo sqrt(9) . '<br>' ;

  // Parametr 2 se odmocní - vypíše se 1.4142135623731
  echo sqrt(2) . '<br>' ;

?>

Uživatelské funkce v PHP

POZOR

Programátoři si tvoří vlastní funkce. Kvůli KISS a DRY.

POZOR

Volají se stejně, jako funkce vestavěné (jménem a parametry).

POZOR

Musíme jen PHP funkci nadefinovat příkazem function (podobně jako příkazem def v Pythonu).
A hodnotu, kterou má funkce sestavit / spočítat / vrátit (návratová hodnota), vracíme příkazem return.

POZOR

Všimněte si také, že v definici funkce se parametry (zadání) pojmenovávají, nezadávají se hodnotou.

Píše se

  • function pozdrav($jmeno),
  • NIKOLI function pozdrav('Honzo').

Je to proto, že když funkci voláme, chceme vrátit hodnoty pro konkrétní zadání (parametry).

  • Např. sqrt(4) nebo date('N').

Když ale funkci definujeme,

  • nevíme, s jakou hodnotou se bude funkce volat,
  • naopak chceme, aby funkce fungovala pro různá zadání (parametry);

proto se na parametr v definici funkce díváme jako na proměnnou.

  • Při zavolání funkce musí parametry ve volání funkce odpovídat parametrům v definici funkce.
  • Hodnoty parametrů ve volání funkce se přiřadí do proměnných v definici funkce.
POZOR

Uživatelským funkcím se také říká "vlastní funkce" nebo UDF - User Defined Functions.

<?php

// Definice 2 uživatelských funkcí

// - Funkce pro vypsání pozdravu
function hezkyPozdrav($jmeno) {
  return "Čuz pic, " . $jmeno . ".<br>";
}
    
// - Funkce pro vypsání toho, jak se mám
function mamSe($jak) {
  return "Mám se fajn, " . $jak . ".<br>";
}

// Zavolání a výpis výše definovaných funkcí

echo hezkyPozdrav("Honzo") ;
// Řetězec "Honzo" se přiřadí do proměnné $jmeno z definice funkce hezkyPozdrav.
// Pak se provede kód z definice funkce:
// - vrátí se řetězec "Čuz pic, " . $jmeno . ".<br>"
// Řádek tedy vypíše do stránky "Čuz pic, Honzo.<br>"

echo mamSe("bomba") ;
// Řádek vypíše do stránky "Mám se fajn, bomba.<br>"    
?>
  Předchozí stránka