PHP - Typy proměnných

Proměnné se v PHP vyskytují v několika typech:

TypVýznam
StringText, řetězec (sada znaků), příklad: $retezec = "obyčejný text";
IntegerCelé číslo, se kterými je možné pracovat, počítat, příklad: $cislo = 2;
Float, real nebo doubleDesetinné číslo
BooleanLogická proměnná, hodnota PRAVDA, NEPRAVDA (1, 0), zapisuje se TRUE nebo FALSE

Odlišné typy proměnných se odlišně zavádějí:

$retezec = "obyčejný text";
$celecislo = 2;
$desetinnecislo = 0.2;
$logickapromenna = TRUE;

Pomocí metody gettype() lze zjistit jakého je proměnná typu (vrací hodnoty string, integer, double, boolean):

echo gettype($retezec);
echo gettype($celecislo);
echo gettype($logickapromenna);
echo gettype($desetinnecislo);

Pomocí metody settype() je možné změnit typ proměnné, smysl to má například, když chcete počítat s proměnnou, která je zavedená jako řetězec. Změnu provedeme následovně:

<?php $cislo = "20"; echo "Typ1: ".gettype($cislo); settype($cislo, "integer"); echo "Typ2: ".gettype($cislo); ?>

Jako parametr v metodě settype můžeme použít hodnoty string, integer, double, boolean. Příbuzné jsou ověřovací metody is_bool, is_integer, is_string a is_float, které vracují TRUE (1, PRAVDA), pokud proměnná odpovídá dotazovanému typu:

<?php
$prom = "ahoj";
if(is_string($prom)) {echo "ANO";};
?>

Význam přetypování

Pokud budete měnit typ proměnných, průběh bude následující:

stringintegerfloatboolean
stringZačíná-li řetězec číslem, vrací toto číslo, jinak nulu.Začíná-li řetězec číslem, vrací toto číslo, jinak nulu.Pokud je řetězec "" nebo "0" vrací se FALSE, jinak TRUE
integerŘetězecČísloPokud je číslo 0, tak FALSE, jinak TRUE
floatŘetězecZaokrouhlí směrem k nule0.0 - FALSE, jinak TRUE
booleanFALSE - "", TRUE - "1"FALSE - 0, TRUE - 1FALSE - 0.0, TRUE - 1.0

Další: PHP větvení



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