NA VRH
DOMOV HTML CSS JavaScript jQuery PHP MySQL Python C# Sass WordPress
glave/headings

PHP XAMPP Spremenljivke Vrste podatkov Konstante Nizi Števila: - cela števila - decimalna števila - neskončnost - ni število - številski nizi - is_numeric() - pretvorba nizov in decimalnih števil v cela števila Matematika Aritmetični operatorji Operatorji dodeljevanje Primerjalni operatorji Operatorji višje in nižje vrednosti Logični operatorji Operatorji nizov Operatorji seznama Pogojni operatorji dodelitve Izjave Zanke AJAX

Števila

V tej delavnici bomo podrobneje spoznali cela števila (integers), decimalna števila (float) in številske nize. Pri PHP je potrebno opaziti eno stvar, in to je da omogoča samodejno pretvorbo podatkovnih tipov. Če spremenljivki dodelimo vrednost celega števila, bo vrsta spremenljivke avtomatično celo število. In, če potem isti spremenljivki dodelimo niz (string), se bo tip spremenljivke spremenil v niz. Samodejna pretvorba kot takšna, lahko občasno zlomi kodo.

Števila

Celo število je številka brez decimalnega dela. Medtem ko so 2, 256, -256, 10358, -179567 cela števila, so 7.56, 10.0, 0.150 decimalna števila (float).

Celoštevilčni podatkovni tip je torej ne-decimalno število med -2147483648 in 2147483647. Večja ali nižja vrednost od te, bo shranjena kot decimalno število (float), ker presega omejitev celotnega števila.

Naslednja pomembna stvar, ki jo je potrebno vedeti o številih je, da tudi če pomnožimo 5 * 4.7 se bo rezultat shranil kot decimalno število (float), ker je en od množiteljev decimalno število (float).

Nekaj pravil za cela števila (integer):

PHP ima naslednje funkcije za preverjanje, ali je vrsta spremenljivke celo število ali ne.

bool(true)
Process finished with exit code 0
    <?php
    $a = 4327;
    var_dump(is_int($a));
    ?>
            

bool(false)
Process finished with exit code 0
    <?php
    $b = 33.333;
    var_dump(is_int($b));
    ?>
            

Decimalno število (float) je število z decimalno vejico ali število v eksponentni obliki. Lahko je to številka 1.0, 21.638, 3.66E-5 so vsa decimalna števila. Podatkovni tipi decimalnih števil lahko običajno shranijo vrednosti do 1,797693134623E + 308 (odvisno od platforme), in imajo največjo natančnost do 14 decimalk.

PHP ima naslednje funkcije za preverjanje spremenljivke, če je to decimalno število:

bool(true)
Process finished with exit code 0
    <?php
    $c = 13.72;
    var_dump(is_float($c));
    ?>
            

bool(false)
Process finished with exit code 0
    <?php
    $c = 3;
    var_dump(is_double($c));
    ?>
            

Številska vrednost, ki je večja od PHP_FLOAT_MAX velja za neskončno. PHP ima sledeče funkcije za preverjanje neskončnosti:

Vendar pa vrednost var_dump() vrne vrsto podatkov in vrednost.

float(INF)
Process finished with exit code 0
    <?php
    $d = 1.2e345;
    var_dump($d);
    ?>
            

Funkcija NaN (Not a Number) se uporablja za nemogoče matematične operacije. PHP ima funkcijo za preverjanje vrednosti, če je število NaN, to je

Funkcija var_dump() vrne vrsto podatkov in vrednost.

float(NAN)
Process finished with exit code 0
    <?php
    $e = acos(24);
    var_dump($e);
    ?>
            

S pomočjo funkcije is_numeric() lahko ugotovimo, ali je spremenljivka število. Funkcije vrne true, če je spremenljivka število ali številski niz, drugače vrne false.

bool(true)
bool(true)
bool(true)
bool(false)
Process finished with exit code 0
    <?php
    $f = 1234;
    var_dump(is_numeric($f));

    $g = 5678;
    var_dump(is_numeric($g));

    $h = 13.14 + 10;
    var_dump(is_numeric($h));

    $i = "Pozdravljen";
    var_dump(is_numeric($i));
    ?>
            
Včasih moramo številčno vrednost vnesti v drug podatkovni tip. Funkcije, kot so int, integer ali intval() se pogosto uporabljajo za pretvorbo vrednosti v celo število.

1234512345
Process finished with exit code 0
    <?php
    // pretvori float v int
    $j = 12345.678;
    $int_cast = (int)$j;
    echo $int_cast;

    // pretvori string v int
    $k = "12345.678";
    $int_pre = (int)$k;
    echo $int_pre;
    ?>