traži:  
 php.com.hr > Tipovi podataka

Tipovi podataka
 


U PHP-u ne postoje fiksni tipovi podataka. Naime, ne morate definirati tip varijable prije njenog korištenja i varijablu možete deklarirati bilo kada unutar skripte i pridruživati joj različite tipove podataka tokom izvođenja skripte (iako ovo nije uobičajena niti previše pametna praksa). Isto tako možete mijenjati tip podataka neke varijable jednog te istog sadržaja, ali o tome par redaka kasnije.


Tipovi podataka koje podržava PHP su:

  • Cijeli brojevi (integer)

  • Realni brojevi (floating-point numbers )

  • Tekstualni podatci (String)

  • Logičke varijable

  • Nizovi

  • Objekti


U slijedećim primjerima koristit ću neke funkcije koje će vam možda biti nepoznate i neće vam odmah biti jasno čemu one služe. Njih zanemarite i pokušajte shvatiti primjere što bolje možete. Sve funkcije će biti detaljnije objašnjene malo kasnije, kada bude bilo priče o kontrolnim strukturama i sličnim stvarima.


Cijeli brojevi


U ovaj tip varijable možemo pohraniti pozitivne i negativne brojeve u rasponu od

-2147483648 do 2147483647 tj. 32 bita podataka. Možemo ih zapisati u decimalnom, oktalnom ili heksadecimalnom zapisu.


Par primjera:

$int_var=123; //pozitivan decimalni broj

$int_var=-123; //negativni decimalni broj

$int_var=0123; //oktalni broj

$int_var=0#123; //heksadecimalni broj


Realni brojevi


Postoje dva načina spremanja realnih brojeva

$dbl_var=0.123;

// ili

$dbl_var=1.123e8;


Budite pažljivi kada koristite realne brojeve. Naime njihova točnost nije garantirana (ima veze sa pretvaranje ovog broja u njegov binarni ekvivalent. Recimo 0.33333 nikada neće biti točno prebačen u binarni ekvivalent). Stoga, nemojte ih uspoređivati za jednakost i vjerovat im do posljednje decimale.




Tekstualni podaci


Sadržaj string tipa varijable se nalazi između navodnika. Možete koristiti duple i jednostruke navodnike. Postoje razlike u ispisu sadržaja ovisno o tipu navodnika koje koristite.


Korištenjem duplih navodnika možete koristiti 'spcial characters'. To su posebni znakovi koji govore PHP-u da izvrši određene radnje pri ispisu sadržaja varijable. Ako ste ikada radili u C-u ili Perlu već ste upoznati za ovim znakovima. To su znakovi koji slijede iza znaka backslash ( \ ). On se ujedno koristi za preskakanje određenog znaka unutar stringa.


Lista escape znakova:


Znak

Značenje

\n

Novi red(LF ili 0x0A u ASCIIu)

\t

Tab razmak (HT ili 0x09 u ASCIIu)

\\

Backslash

\$

Dolar znak

\"

Dupli navodnik


Ovi znakovi neće imati utjecaja na izgled same stranice u prozoru browsera, već će njihov utjecaj biti vidljiv tek pri pregledu sourcea dokumenta. Ovime možete sasvim sakriti činjenicu da je stranica stvorena putem PHP-a i pomoću njih je lakše pronaći grešku u generiranoj stranici. U protivnom bi se sav sadržaj ispisao u jedan red bez razmaka. Uviđate da bi bilo vrlo teško u tom neredu naći bilo što, a kamoli grešku u ispisu, ako ju tražite u source viewu.


Ukoliko želite da se neki tekst prebaci u novi red pri gledanju stranice u prozoru browsera morat ćete se poslužiti <br> i sličnim tagovima. Znači, ako se želite koristiti PHP-om morate se jako dobro znati služiti HTML-om.


Još jedan bitna razlika između duplih i jednostrukih navodnika je ta da će se pri korištenju duplih navodnika sadržaj varijable ispisati a pri korištenju jednostrukih navodnika ispisat će se ime varijable skupa sa znakom $. Mali primjer bi ovo dobro ilustrirao.


Primjer 5.

<?

$str_ime="Kreso";

echo ("Moje ime je $str_ime");


?>


Ispisuje:

moje ime je Kreso


Dok će,


Primjer 6.

<?

$str_ime="Kreso";

echo ('Moje ime je $str_ime');

?>


ispisati:

moje ime je $str_ime



U PHP-u je također moguće spajanje više stringova u jedan ispis. To radimo pomoću '.' . Evo primjera:

Primjer 7.

<?

$str_var1='Dijete';

$str_var2='ide'; //nema razmaka prije ili poslije riječi

echo $str_var1 . ' ' . $str_var2 . ' u školu';


// rezultira sa

// Dijete ide u školu

?>


Uočite da su u gornjem primjeru korišteni jednostruki navodnici, ali varijable se ne nalaze u njima tako da će se njihov sadržaj ispisati. Također su izostavljene zagrade, što je dozvoljeno.


Kao što sam već spomenuo, pri radu sa stringovima možemo u njihovom imenu koristiti znakove [ i ]. Njih koristimo kada želimo izdvojiti određeni znak iz stringa, tj. String zamislimo kao jednodimenzionalni numerički niz indeksiran na taj način da se na svakom broju, počevši od 0, nalazi jedan znak stringa. Raspon indexa je od 0 do n-1; gdje je n broj znakova niza.


<?

$str_tekst='Dijete ide u školu';

$str_znak=$str_tekst[0];

echo $str_znak; //ispisuje 'D'

echo $str_tekst[3]; //ispisuje 'e'

echo $str_tekst[strlen($str_tekst)-1] //ispisuje zadnji znak 'u'

?>


Kao što vidite u njih možete smjestiti bilo koji izraz koji će na kraju rezultirati cijelim brojem (integerom).
U ovom primjeru je korištena naredba
strlen($neki_string)

Koja vraća duljinu (broj znakova) nekog stringa.


Logičke varijable

Logički tip podataka ima dvije moguće vrijednosti : true i false


Deklaracija logičke varijable:

$logicka=true;

$logicka=false;


Ovaj tip podataka je također rezultat logičkih izraza (npr. iz if uvjeta) te nekih PHP funkcija.  



PHP
 © 2004 - 2008 php.com.hr