PHP lekcije - lekcija 4 - Numeričke promenljive u PHP-u
U prethodnoj lekciji smo obradili string promenljive, a sada ćemo pogledati numeričke promenljive. Najjednostavniji tip brojeva su celi brojevi.
Celi brojevi u PHP-u
Celi brojevi obuhvataju sve brojeve iz opsega [-2 147 483 648, ..., -4, -3, -2, -1, 0, 1, 2, 3, 4, ..., 2 147 483 647], tj. od -2147483648 do 2147483647. Ovo ograničenje je zbog toga što je za predstavljanje celih brojeva potrebno 32 bita.
Kao i ostale promenljive u PHP-u, celi brojevi se definišu jednostavnim dodeljivanjem vrednosti.
<?php $x = 5; $y = -8; ?>
Pored uobičajenih decimalnih brojeva, moguće je koristiti i druge brojne sisteme (osmični, heksadecimalni i dr.)
<?php $i = 456; // decimalni broj $i = -895; // negativan broj $i = 0121; // osmični broj (ekvivalentan decimalnom 81) $i = 0x1B; // heksadecimalni broj (ekvivalentan decimalnom 27) ?>
Pored celih brojeva, u PHP-u postoje i decimalni brojevi.
Decimalni brojevi (float) u PHP-u
Decimalni brojevi u PHP-u se zapisuju kao decimalne vrednosti:
$pi = 3.14;
Decimalni deo se odvaja tačkom, ali ne mešajte to sa operatorom sabiranja stringova. Takođe, decimalni brojevi mogu biti zapisani u naučnom (eksponentnom) obliku:
$b = 3.2e5; $c = 9E-11;
Decimalni brojevi, ili kako ih još nazivaju brojevi sa pokretnim zarezom (float point), zauzimaju 64 bita memorije (dvostruko više nego celi brojevi).
Obično decimalni brojevi nastaju kao rezultat deljenja:
$a = 1/3; print $a;
Rezultat će biti:
0.333333333333
Vredno je primetiti da rezultat ponekad može biti neočekivan:
$a = 1/3; $a = $a*3; print $a;
Rezultat neće biti 0.999999999, već tačno 1.
Ako biste to uradili na kalkulatoru (podelili 1 sa 3 i zatim pomnožili sa 3), verovatno biste izgubili milioniti ili milijarditi deo zbog ograničene preciznosti kalkulatora. PHP ne može lako da „prevari“ – on pamti operacije nad promenljivom i ne gubi deo rezultata.