PHP tipovi podataka

Ovde ćemo se upoznati sa tipovima podataka koje možemo koristiti u PHP-u. Najpre ćemo se upoznati sa četiri osnovna tipa, a onda ćemo ukratko opisati i dva kompleksna i dva specijalna tipa podataka.

Osnovni tipovi

Osnovni tipovi podataka su:

Celi brojevi

Celi brojevi mogu biti pozitivni ili negativni. Takođe mogu biti u dekadnom, oktalnom, heksadekadnom ili binarnom sistemu. Sistem brojeva zavisi od prefiksa broja:

Primer


  $x = 8980;         // pozitivan broj
  $x = -129;         // negativan
  $x = 02266;        // oktalni broj
  $x = 0x3F;         // heksadekadni broj
  $x = 0b110010111;  // binarni broj

Celi brojevi su ograničeni. Na 32-bitnim platformama i na Windows serveru, maksimalni celi broj je nešto preko 2.14 milijardi. Ako se maksimum prekorači, PHP će broj automatski konvertovati u float. Drugi programski jezici razlikuju označene i neoznačene brojeve (gde postoje samo pozitivni). U PHP-u su celi brojevi uvek označeni, što znači da je rang broja od -2.14 milijarde do +2.14 milijarde.

Veličina integer tipa se nalazi u predefinisanoj konstanti PHP_INT_SIZE, a maksimalan integer broj u konstanti PHP_INT_MAX.

Brojevi u pokretnom zarezu

Ovo su brojevi sa decimalama. U memoriji se beleže kao brojevi u pokretnom zarezu. Broj preciznih cifara varira od platforme do platforme, mada bismo uvek trebali da možemo da računamo na bar 14 preciznih cifara. Decimalni znak je uvek tačka.

Primer


  $a = 3.14;        // broj u fiksnoj notaciji
  $a = 2.3e5;       // broj u pokretnom zarezu
  $a = 4.3E-2;      // broj u pokretnom zarezu

Logičke vrednosti

Postoje samo dve logičke vrednosti: true i false. Nebitno je da li ih pišemo velikim ili malim slovima.

Primer


  $b = false;     // broj u fiksnoj notaciji
  $b = 0;         // tumači se kao false
  $b = 0.0;       // tumači se kao false
  $b = "";        // tumači se kao false
  $b = "0";       // tumači se kao false

Stringovi

Stringovi su tekstualne vrednosti. Mogu biti navedeni na više načina, a mi ćemo ovde obraditi dva osnovna.

Prvi i najprostiji način je navođenje teksta unutar apostrofa. Unutar apostrofa možemo zadati bilo koji znak, s tim što za apostrof moramo da navedemo escape sekvencu, tj. da ga navedemo kao \'.

Drugi način je navođenje teksta unutar navodnika. Ovako navedeni stringovi su mnogo moćniji. Kao prvo prepoznaju veći broj specijalnih znakova, a osim toga vrše parsiranje promenljivih (za navedene promenljive ispisuju njihovu vrednost).

Primer


  $t = 'Ovo je običan tekst s\' apostrofom.';
  // TEKST: Ovo je običan tekst s' apostrofom.

  $t = "Ovde možemo zadati i \nNOVI RED";
  // TEKST: Ovde možemo zadati i 
  //        NOVI RED
  
  $prom = 123;
  $t = "Vrednost promenljive \$prom je {$prom}.";
  // TEKST: Vrednost promenljive $prom je 123.

  $t = "I sam tekst može biti
        zadat u više redova";

Kompleksni i specijalni tipovi

U kompleksne tipove spadaju nizovi (Array) i objekti (Object).

Nizovi su strukture podataka koje pod jednom "promenljivom" sadrže više vrednosti. Mogu biti numerisani i asocijativni. Numerisani nizovi pamte vrednosti pod rednim brojevima, dok asocijativni beleže podatke po sistemu ključ-vrednost. Nizovi su veoma važni u programiranju, pa ćemo se njima mnogo više posvetiti kasnije.

Objekat je "konglomerat" promenljivih (svojstva) i funkcija (metodi). PHP nam omogućava da programiramo na klasičan imperativan način, ali i objektno-orijentisano. U tom slučaju nam tip objekta postaje značajan.

Specijalan tip null ima samo jednu moguću vrednost i to je NULL (velika i mala slova nisu bitna). Ovu vrednost imaju "prazne", odnosno nedefinisane promenljive. Svaka promenljiva kojoj još nije dodeljena vrednost, ako pokušamo da je upotrebimo, imaće vrednost null.

Primer


  $x = null;    // eksplicitna dodela
  unset($y);    // unsetovanje promenljive

Resursi su još jedan specijalan tip. Ovaj tip imaju promenljive koje služe kao "handleri", odnosno veza ka nekom spoljnom resursu (npr. konekcija sa bazom podataka, promenljiva preko koje smo otvorili fajl i sl.)

Svi elementi sajta Web'n'Study, osim onih za koje je navedeno da su u javnom vlasništvu, vlasništvo su autora i ne smeju se koristiti, u celosti ili delimično bez pismenog odobrenja autora. To uključuje tekstove, slike, ilustracije, animacije, prateći grafički materijal i programski kod.
Ovaj sajt koristi tehnologiju kolačića (cookies). Detaljnije o tome možete pročitati u tekstu o našoj politici privatnosti.