PHP - Tipovi podataka


Tipovi podataka u PHP-u?

Dodjeljene vrijednosti PHP varijabli mogu biti različiti tipovi podataka, uključujući jednostavne stringove pa sve do kompleksniji numerički tipovi podataka poput nizova i objekata. PHP podržava ukupno osam primitivnih tipova podataka: Integer, Floating point number ili Float, String, Booleans, Array, Object, resource i NULL. Ove vrste podataka koriste se za gradnju varijabli. Sada ćemo detaljno naučiti o svakom od njih.



PHP Integers

Integers su cijeli brojevi, bez decimalnih mjesta (..., -2, -1, 0, 1, 2, ...). Cijeli brojevi mogu se specifikovati kao decimalni (baza 10), heksadecimalni (baza 16 - sa prefiksom 0x) ili oktalnim (baza 8 - sa prefiksom 0), opcijski prethodi znaku (- ili +).

<?php
$a = 123; // decimalni broj
var_dump($a);
echo "<br>";
 
$b = -123; // negativan broj
var_dump($b);
echo "<br>";
 
$c = 0x1A; // heksadecimalni broj
var_dump($c);
echo "<br>";
 
$d = 0123; // oktalni broj
var_dump($d);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Integers - Cijeli brojevi </title>
</head>
<body>

<?php
$a = 123; // decimalni broj
var_dump($a);
echo "<br>";
 
$b = -123; // negativan broj
var_dump($b);
echo "<br>";
 
$c = 0x1A; // heksadecimalni broj
var_dump($c);
echo "<br>";
 
$d = 0123; // oktalni broj
var_dump($d);
?>

</body>
</html>


PHP String

Stringovi su nizovi znakova u kojima je svaki znak isto šta i bajt. String može da sadrži slova, brojeve i posebne znakove, a može biti i do 2 GB (maksimalno 2147483647 bajta). Najjednostavniji način da odredite string jeste da ga zatvorite u jednostruke navodnike (npr. 'Hello world!'), ali možete koristiti i dvostruke navodnike ("Hello world!") kako biste kreirali string.

<?php
$a = 'Hello world!';
echo $a;
echo "<br>";
 
$b = "Hello world!";
echo $b;
echo "<br>";
 
$c = 'Ostani ovde, brzo se vraćam.';
echo $c;
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Stringovi</title>
</head>
<body>

<?php
$a = 'Hello world!';
echo $a;
echo "<br>";
 
$b = "Hello world!";
echo $b;
echo "<br>";
 
$c = 'Ostani ovde, brzo se vraćam.';
echo $c;
?>

</body>
</html>

Više o stringovima pogledajte u lekciji PHP String-ovi.



PHP brojevi s decimalnim zarezom (Floats)

Brojevi s decimalnim zarezom (poznati i kao "floats", "doubles", ili "real numbers") su decimalni ili frakcijski brojevi, kao što je prikazano u sljedećem primjeru.

<?php
$a = 1.234;
var_dump($a);
echo "<br>";
 
$b = 10.2e3;
var_dump($b);
echo "<br>";
 
$c = 4E-10;
var_dump($c);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Decimalni brojevi (Floats)</title>
</head>
<body>

<?php
$a = 1.234;
var_dump($a);
echo "<br>";
 
$b = 10.2e3;
var_dump($b);
echo "<br>";
 
$c = 4E-10;
var_dump($c);
?>

</body>
</html>


PHP Booleans

Booleans-i su poput prekidača koji ima samo dvije moguće vrijednosti 1 (true) ili 0 (false).

<?php
// Dodjeljivanje TRUE vrijednosti varijabli
$show_error = true;
var_dump($show_error);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Booleans</title>
</head>
<body>

<?php
// Dodjeljivanje TRUE vrijednosti varijabli
$show_error = true;
var_dump($show_error);
?>

</body>
</html>


PHP Arrays (Nizovi)

Niz je varijabla koja može istovremeno da sadrži više vrijednosti. Korisno je objediniti niz povezanih stavki zajedno, na primjer: naziv države ili grada. Niz je formalno definisan kao indeksirana zbirka vrijednosti podataka. Svaki indeks (poznat i kao ključ) niza je jedinstven i upućuje na odgovarajuću vrijednost.

<?php
$colors = array("Crvena", "Zelena", "Plava");
var_dump($colors);
echo "
";
 
$color_codes = array(
    "Crvena" => "#ff0000",
    "Zelena" => "#00ff00",
    "Plava" => "#0000ff"
);
var_dump($color_codes);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Niz (Arrays)</title>
</head>
<body>

<?php
$colors = array("Crvena", "Zelena", "Plava");
var_dump($colors);
echo "
";
 
$color_codes = array(
    "Crvena" => "#ff0000",
    "Zelena" => "#00ff00",
    "Plava" => "#0000ff"
);
var_dump($color_codes);
?>

</body>
</html>

Više o nizovima pogledajte u lekciji PHP Nizovi.



PHP Objects (Objekti)

Objekt je vrsta podataka koja ne samo da omogućava pohranu podataka, već omogućava i informacije o tome kako ih obrađivati. Objekt je specifična instanca klase koja služi kao prijedlog za objekte. Objekti se stvaraju na osnovu ovoga prijedloga pomoću ključne riječi new. Svaki objekt ima svojstva i metode. Svaka instanca objekta potpuno je nezavisna, sa svojim svojstvima i metodama, te se na taj način može manipulisati nezavisno o ostalim objektima iste klase. Evo jednostavnog primjera definicije klase koju slijedi stvaranje objekta.

<?php
// Definisanje klase
class greeting{
    // svojstvo
    public $str = "Hello World!";
    
    // metoda
    function show_greeting(){
        return $this->str;
    }
}
 
// Kreiranje novog objekta iz klase
$message = new greeting;
var_dump($message);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Objekti (Objects)</title>
</head>
<body>

<?php
// Definisanje klase
class greeting{
    // svojstvo
    public $str = "Hello World!";
    
    // metoda
    function show_greeting(){
        return $this->str;
    }
}
 
// Kreiranje novog objekta iz klase
$message = new greeting;
var_dump($message);
?>

</body>
</html>


PHP Prazna vrijednost (NULL)

Posebna NULL vrijednost koristi se za predstavljanje praznih varijabli u PHP-u. Varijabla tipa NULL je varijabla bez ikakvih podataka. NULL je jedina moguća vrijednost tipa null.

<?php
$a = NULL;
var_dump($a);
echo "<r>";
 
$b = "Hello World!";
$b = NULL;
var_dump($b);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Prazna vrijednost (NULL)</title>
</head>
<body>

<?php
$a = NULL;
var_dump($a);
echo "<r>";
 
$b = "Hello World!";
$b = NULL;
var_dump($b);
?>

</body>
</html>

Kada se stvori varijabla bez vrijednosti u PHP-u, poput $var; automatski se dodjeljuje vrijednost (null). Mnogi početnici, PHP programeri pogrešno su smatrali da je isto npisati $var1 = NULL; i $var2 = "";, ali to nije tačno. Obe varijable su različite - $var1 ima null vrijednost dok $var2 ukazuje da joj nije dodijeljena nikakva vrijednost.



PHP Resources (Resursi)

Resurs je posebna varijabla koja ima referencu na vanjski resurs. Promjenjivi resursi obično sadrže posebne alate za otvaranje datoteka i veza sa bazom podataka.

<?php
// Otvori file za čitanje
$handle = fopen("note.txt", "r");
var_dump($handle);
echo "<br>";
 
// Konekcija sa bazom podataka MySQL sa difoltnim podešavanjima
$link = mysql_connect("localhost", "root", "");
var_dump($link);
?>
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <title>PHP Resursi (Resources)</title>
</head>
<body>

<?php
// Otvori file za čitanje
$handle = fopen("note.txt", "r");
var_dump($handle);
echo "<br>";
 
// Konekcija sa bazom podataka MySQL sa difoltnim podešavanjima
$link = mysql_connect("localhost", "root", "");
var_dump($link);
?>

</body>
</html>