<< Základní informace | P H P | Operátory a výrazy >>

Proměnné v PHP

  • identifikátor začíná znakem $ <alt + 36>
  • za speciálním znakem následuje písmeno nebo podtržítko (první znak jména)
  • ve jménu lze použít písmena, čísla, tečku, podtržítko i diakritiku (nedoporučuje se)
  • v názvech nelze zaměnit malá velká písmena
  • deklarace typu proměnné je automatická při zadání hodnoty
  • hodnota se zadává přiřazením pomocí operátoru =

Jednoduché datové typy

Celé číslo

  • Integer
  • kladná a záporná celá čísla v rozsahu od -2 biliónu po + 2 bilióny včetně 0

Desetinné číslo

  • Float nebo Real
  • kladná i záporná čísla s přesností běžně na 14 desetinných míst
  • v PHP prakticky neomezená velikost

Logický typ

  • Boolean
  • uchovává hodnotu "pravda" nebo "nepravda"
  • zapisuje se jako TRUE a FALSE (na velikosti písmen nezáleží)

Řetězec

  • String
  • uchovává texty - řetězce znaků
  • řetezec je znak nebo sada znaku
  • v PHP prakticky neomezená délka

Příklad deklarace proměnných

<?php
    //logický typ
  $mam_malo_penez = TRUE;
    //celocíselný typ
  $plat = 10000;
    //desetinné císlo
  $disketa = 3.5;
    //retezec
  $prohlaseni = "Práve se vracím z pražského hradu! ..." ;

  echo $mam_malo_penez."<BR>";
  echo $plat."<BR>";
  echo $disketa."<BR>";
  echo $prohlaseni."<BR>";
?>

Zápis řetězců

  • pro zápis je možné využít apostrofy nebo uvozovky

Apostrofy

  • textový řetězec v apostrofech se vypisuje přesně podle zápisu
  • apostrofy nereagují na proměnné a speciální znaky
  $jmeno = 'Josef';
  $text = 'Jmenuji se $jmeno \n S tímto "jménem" jsem spokojen.';
  echo($text);
Výstup
Jmenuji se $jmeno \n S tímto "jménem" jsem spokojen.

Uvozovky

  • narozdíl od apostrofů reagují na proměnné a speciální znaky
  $jmeno = 'Josef';
  $text = "Jmenuji se $jmeno \n S tímto "jménem" jsem spokojen.";
  echo($text);
Výstup
Jmenuji se Josef
S tímto "jménem" jsem spokojen.

Uvozovky v HTML

  • do řetězců je možné zapisovat HTML značky
  • potíže vznikají při použití vnořených uvozovek v zápisu atributů
  • uvozovky je třeba escapovat nebo střídat s apostrofy
Možnosti zápisu
// Esccapování apostrofů v html
echo('Adresa <a href=\'http://info.spsnome.cz\'>InfoWebu</a>.') . "<br>";
// Escapování úvozovek v html
echo("Adresa <a href="http://info.spsnome.cz">InfoWebu</a>.") . "<br>";
// Střídání apostrofů a úvozovek
echo('Adresa <a href="http://info.spsnome.cz">InfoWebu</a>.') . "<br>";
echo("Adresa <a href='http://info.spsnome.cz'>InfoWebu</a>.") . "<br>";

Rozsah platnosti proměnných

Lokální proměnné

  • platnost v rámci funkce

Globální proměnné

  • platnost v celém skriptu

Superglobální proměnné

  • platnost pro více skriptů
  • slouží pro přenos dat mezi skripty
  • proměnné typu pole Array

Přehled

  • $_GET - Obsahuje data formuláře odeslaná metodou GET
  • $_POST - Data formuláře odeslaná metodou POST
  • $_REQUEST - Data formuláře odeslaná libovolnou metodou. (O $_GET, $_POST a $_REQUESTviz také kapitola o předávání dat na server).
  • $_FILES - Informace o souborech nahraných na server, obvykle přes <input type="file">
  • $_SERVER - Různé systémové informace. Vyzkoušejte var_dump($_SERVER);
  • $_COOKIE - Nastavené cookies.
  • $_SESSION - Data relace (session), pokud ji máte zahájenou.
  • $GLOBALS (bez podrtžítka) - Globální proměnné. Alternativa k označování proměnných jako globální pomocí global
    • ke globální proměnné $promenna je možno přistupovat pomocí $GLOBALS["promenna"].
  • $_ENV - Proměnné prostředí, ve kterém PHP běží
    • Podobně jako u $_SERVER je možné pomocí var_dump($_ENV); zjistit, co všechno je k dispozici.
RSS