Jump to content

návod [MANUAL] PHP: Typy proměnných


cniry

Recommended Posts

V php existuje hned několik různých typů proměnných. Ti co dělali s pawnem, jistě vědí o čem mluvím, ti co nevědí, dozvědí se to právě teď.

 

Proměnná může obsahovat:

číslo (integer) - jakékoli čislo a můžeme s ní provádět matemativké operace. S jinými typy to nejde.

Pokud proměnnou plníme číslem, nezadáváme ho do uvozovek!

Například:

<?php
$cislo = 10; //cislo je nyni 10

//a nejake ty matematicke operace aby nebyla nuda:

$cislo = $cislo + 15;  //cislo je nyni 25  (10+15=25)

$cislo = $cislo / 5;  //cislo je nyni 5  (25/5=5)

$cislo = $cislo * 2; //cislo je nyni 10  (5*2=10)

$cislo = $cislo - 10;  //cislo je nyni 0  (10-10=0)

 

 

Text (string) - do proměnné lze uložit jakkoli dlouhý text

<?php
$promenna = "ahoj já jsem pavel";

echo $pavel; //vypise text: ahoj ja jsem pavel

 

 

Pole (array) - do proměnné lze uložit i více hodnot typu text/cislo najednou.

Sledujte:

<?php
$pole = array(
               "prvni hodnota bude text",
               "druha bude taky text",
               3,
            );

echo $pole by nam ale vyhodilo error.

Pri vytahovani dat z promenne typu pole je nutne vzdy vedet o kolikatou hodnotu v poradi jde.

Volani hodnot z pole vypada takto:

 

echo $pole[1];  //vypise: druha hodnota bude taky text

 

Rikate si proc to vypsalo druhou hodnotu kdyz je v hranate zavorce jednicka? Cislovani probiha od nuly takze prvni hodnota ma cislo 0, druha 1, treti 2, ctvrta 3 atd...

 

 

 

 

Pokud mate promennou a nevite jakeho typu je, zkuste nasledujici kod:

 

$promenna = 16873;
var_dump($promenna);

vypise: int(16873)

 

tedy jde o cislo 16873

 

 

$promenna = "ahoj";
var_dump($promenna);

 

vypise: string(4) "ahoj"

 

tedy jde o text o delce 4 znaky s obsahem "ahoj"

 

 

$pole = array(
               "prvni hodnota bude text",
               "druha bude taky text",
               3,
            );

var_dump($pole);

vypise:

 

array(3) {

[0]=> string(23) "prvni hodnota bude text"

[1]=> string(20) "druha bude taky text"

[2]=> int(3)

}

 

tedy jde o pole s vyse popsanymi typy hodnot

 

 

 

Obsah pole si můžete pro testování vypsat buďto detailně funkcí var_dump($pole)

nebo výpis pouze obsahu přes funkci print_r($pole);

 

Porot, funkce print_r() funguje jen pro pole, zatímco var_dump() funguje na všechny proměnné.

I přes to jsem si raději oblíbil print_r() pro jeho pěknější výpis.

Zkuste si sami porovnat výpisy těchto funkcí, abyste poznali rozdíl.

 

 

Ještě bych rád poznamenal, že obsah pole jde definovat i takto:

$pole[1] = "ahoj";

nebo dokonce:

$pole['pozdrav'] = "ahoj začátečníku v php";

 

identifikátor řádku tedy nemusí být pouze číselný, ale i textový, což jistě brzy oceníte :)

 

Nejznámějšími poli jsou superproměnné

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...