PHP Tipovi podataka Tipovi podataka Skalarni boolean logiki
PHP Tipovi podataka
Tipovi podataka �Skalarni � boolean – logički tip � integer – celobrojni tip � float – racionalni tip � string – znakovni niz �Složeni � array - niz � object - objekat �Specijalni � resource - resurs � Null – prazno/ništa
Logički tip (boolean) �Logički tip se u PHP-u ponaša slično kao u C-u, dakle nema stroge tipizacije. � 0 se tretira kao false, a sve ostale vrijednosti kao true: $a= false; // $a je false. $a= 1; // $a je true. $a= -1; // $a je true. $a= 5; // $a je true. $a= 0; // $a je false.
Cijelobrojni tip (Integer) �To su svi cijeli brojevi između -2. 147. 483. 648 and 2. 147. 483. 647 �Zapisi cijelih brojeva mogu biti dekadni, heksadekadni i oktalni. �U PHP 6 uveden je i 64 -bitni cijelobrojni tip 42 // dekadni -678900 // dekadni 0755 // oktalni 0 x. C 4 E // heksadecimalni
Funkcija za ispis tipa podatka gettype() <? php $a=5; echo(gettype($a). " "); $a=5. 3; print(gettype($a ). " "); settype($a, string); print(gettype($a)); ? >
Realni tip (Float) �Vrijednost je broj s pomičnim zarezom, moguće je koristiti i eksponent: na sljedeći način: 1. 23 e 4 == 12300 ili 5 e-2 == 0. 05 �Evo još nekoliko načina zapisa: 4. 5678 4. 0 8. 7 e 4 1. 23 E+11 $a = 1. 234; $b = 1. 2 e 3; $c = 7 E-10;
Promjenljive <? php $a = 0; // $a je podešena na 0. echo $a, " "; $a = $a + 2; // $a sada ima vrijednost 2. echo $a, " "; $a = $a + 1. 1; // $a je sada tipa float sa vrijednošću 3. 1. echo $a, " "; ? >
Tekst (String) �Tekst se u PHP-u tretira, kao niz karaktera. Može biti uokviren jednostrukim ili dvostrukim navodnicima: "PHP je popularan" "pozdrav" '*9 subwayn' "123$%^789" �Navodnici mogu biti dati unutar teksta ako se postavi ": echo "Francuski kralj Filip IV "lijepi"";
Ispis ispod navodnika <? php echo "Francuski kralj Filip IV "lijepi""; ? >
�Postoji značajna razlika između teksta jednostrukim i dvostrukim navodnicima. �Naime, sa tekst vrijednosti u duplim navodnicima se automatski preslikavaju u odnosu na specijalne karaktere i imena promjenljivih: �$recenica 1 = "$osoba vozi $auto "; �$recenica 2 = '$osoba vozi $auto' ;
Kod <? php $osoba = 'Adam'; $auto = 'BMW'; $recenica 1 = "$osoba vozi $auto "; echo $recenica 1; $recenica 2 = '$osoba vozi $auto '; echo $recenica 2; ? >
Izgled ekrana "$osoba vozi $auto "; '$osoba vozi $auto ‘;
<? php $a ='IGRA'; $b ='POCINJE'; $c ='SADA'; $recenica 1 = $a. ' '. $b. ' '. $c. ' ! '; print $recenica 1; $recenica 2 = $c. ' '. $a. ' '. $b. '!'; print $recenica 2; ? > // sada igra pocinje!
Funkcija strlen() �Prikazuje broj znakova promjenljive <? php echo strlen("pozdrav vama!"); ? > //13
Funkcija str_word_count() �Broji riječi u promjenljivoj <? php echo str_word_count("pozdrav vama!"); ? > //2
Funkcija strrev() �Prikazuje rečenicu kao u ogledalu! <? php echo strrev("pozdrav vama!"); ? > Biće prikazano - !amav vardzop
Funkcija strtoupper () �Pretvora riječ u velika slova <? php echo strtoupper("pozdrav vama!"); ? >
Funkcija strtolower () �Pretvora riječ u mala slova <? php echo strtolower("POZDRAV VAMA!"); ? >
zadatak � Kreirati kod koji će koristiti dvije promjenljive i ispisivati vaše ime i prezime a ispod ime u ogledalu. <? php $ime="Jasna"; $prezime="Katić"; echo "$ime $prezime"; echo "<br/>"; echo strrev("$ime $prezime!"); ? >
Konstante �U PHP-u se mogu koristiti i konstante. Razlika između konstanti i varijabli je u tome što se konstante ne pišu s oznakom $, već se piše samo naziv konstante. � Na primjer: <? php define("PI", 3. 14); echo PI; // Ispisuje 3. 14 ? >
�Neke konstante su u samom programskom jeziku PHP definisane. Tako nije potrebno definisati vrijednost konstante Pi, kao što je to napravljeno u primjeru, već se može koristiti već gotova definicija koja tu konstantu naziva M_PI, a ona iznosi: 3. 14159265358979323846. �Na raspolaganju su i M_PI_2 (Pi/2), M_PI_4 (Pi/4), M_1_PI (1/Pi), M_2_PI (2/Pi), M_SQRTPI (sqrt(M_PI)), M_2_SQRTPI (2/sqrt(M_PI)), M_SQRT 2 (sqrt(2)), M_SQRT 3 (sqrt(3)), M_SQRT 1_2 (1/sqrt(2)).
konstanta <? php echo "Pi=". M_PI; echo "<BR/>"; echo "Pi/2=". M_PI_2; echo "<BR/>"; echo "Korijen iz Pi=". M_SQRTPI; ? >
Objekat - object � Objekti su slični kao kod Java. Script-a, ali se sintaksa razlikuje. � Objekti � Klase se definišu klasama kojima pripadaju. imaju definisane atribute i metode. � Promenljive objekti se dobijaju instanciranjem klase.
Resurs - resource �Promenljive tipa resurs su pokazivači na složene eksterne promenljive. �Primer su pokazivač na otvoren fajl ili na vezu sa bazom podataka. �Promenljive tipa resurs se generišu različitim funkcijama u zavisnosti od primjene. �Kompajler automatski briše promenljive tipa resurs koje ne pokazuju na neki resurs.
Nizovi � Niz se koristi kada želimo snimiti jednu ili više vrijednosti pod isti naziv promjenljive, što je praktičnije nego imati više sličnih promjenljivih. � Niz se sastoji od elemenata, a svaki element ima svoj ID (identifikator), koja se označava u uglastim zagradama, npr. $ime[0], $ime[1], $ime[2] …. itd. � Postoje tri vrste nizova u PHP-u: � Numerički niz – niz sa numeričkim identifikacijskim ključem � Asocijativni niz – niz u kojem je ID ključ povezan s nekom vrijednošću � Višedimenzionalni niz – niz koji sadrži jedan ili više
Numerički niz � Numerički niz može se kreirati na dva osnovna načina. � Prvi način – automatsko dodjeljivanje ID ključa: $ime = array("Petar", "Marko", "Ivo"); � Drugi način – ručno dodjeljivanje ključeva: $ime[0] = "Petar"; $ime[1] = "Marko"; $ime[2] = "Ivo";
Nizovi �Niz (array) je struktura podataka koja omogućava snimanje više vrijednosti u jednu. $moj_niz[index]=vrijednost; Primjer: <? php $i[1]="a"; Šta se ispisuje na ekranu $i[2]="b"; $i[3]="c"; echo($i[2]); ? > echo "<br/>"; echo($i[1]);
Primjer upotrebe niza: <? php $ime[0] = "Petar"; $ime[1] = "Marko"; echo $ime[1]. " i ". $ime[0]. " su drugovi. "; ? > echo "$ime[1] i $ime[0] su drugovi. ";
Šta se spisuje na ekranu <? php $niz=array("Aleks"=> "9", "Sanja"=>8 , "Mirko"=>6); echo $niz['Aleks'], " "; echo "{$niz['Aleks']} "; echo $niz["Sanja"]; ? >
<? php $hrana = array('sarma', 'kajmak', 'prebranac', 'jagnjetina'); print_r($hrana); ? > ili <? php $hrana[0]='sarma'; $hrana[1]='kajmak'; $hrana[2]='prebranac'; $hrana[3]='jagnjetina'; print_r($hrana); ? > <? php $hrana[]='sarma'; $hrana[]='kajmak'; $hrana[]='prebranac'; $hrana[]='jagnjetina'; print_r($hrana); ? >
NULL vrednost �Vrednost NULL je �tip podataka/vrednost koja se može dodijeliti promjenljivoj. �Pokazuje vrednost. �Vrednost da promjenljiva ne sadrži nikakvu korisnu "null" se dodeljuje promjenljivoj kada se želi definisati da promjenljiva ne sadrži nikakav podatak.
Primjeri nekih često korištenih funkcija: � Grupa: date/time funkcije – date(), check_date(), . . . � date("d") – vraća brojčanu vrijednost dana u mjesecu, od 0 do 31 � date("D") – vraća tekstualnu vrijednost dana u nedelji, sa prikazana prva tri slova, npr. Mon, Tue, Wed. . Itd. � date ("m") – vraća brojčanu vrijednost mjeseca, broj od 1 do 12 � date("M") – vraća tekstualnu vrijednost mjeseca, prva tri slova � date("t") – vraća broj dana u posmatranom mjesecu � date("F") – vraća puni tekstualni naziv mjeseca � date("h") – vraća koliko je sati po 12 -satnom sistemu � date("H") – vraća koliko je sati po 24 -satnom sistemu. . . Itd.
Date() funkcija u PHP-u �Koristi se ako želimo ispisati ili obraditi podatke o sistemskom datumu i vremenu date(format, timestamp) �Format – predstavlja format u kojem će biti ispisan datum (obavezno navesti) �Timestamp – predstavlja vremensku oznaku. � Standardna oznaka je trenutni datum i vrijeme. � Timestamp je broj sekundi od 1. januara 1970. u 00: 00 GMT. (nije obavezno navesti)
Format datuma �U funkciji date() obavezno je navesti format vremena i datuma. �Definisani su načini ispisa: �d – dan u mjesecu, brojčano (01 -31) �m – tekući mjesec, brojčano (01 -12) �Y – tekuća godina, četiri broja � U format se mogu upisati i znakovi “/”, “. ” i dr, npr:
Primjer <? php $dan=date("d"); $mjesec=date("m"); $godina=date("y"); $datum="$dan / $mjesec / $godina"; echo $datum; ? >
Funkcije za datum � "seconds" - sekunde � "minutes" - minute � "hours" - sati � "mday" - dan u mjesecu (npr. "13") � "wday" - numerički dan u sedmici (npr. "2" za utorak) � "mon" - numerički mjesec (npr. "10") � "year" - godina (npr. "2002") � "yday" - dan od početka godine (npr. "225") � "weekday" - puno ime dana u sedmici (npr. "Saturday") � "month" - puno ime mjeseca (npr. "February")
Ispis datuma <? php $today = getdate(); $month = $today[month]; $mday = $today[mday]; $year = $today[year]; echo "$mday. $month $year. "; ? >
<? php echo date("Y/m/d"); echo " "; echo date("Y. m. d"); echo " "; echo date("Y-m-d"); ? >
Vremenska oznaka (timestamp) �Za vraćanje sistemskog vremena i datuma koristi se funkcija mktime(). mktime(hour, minute, second, month, day, year, is_dst) �Npr. ako želimo ispisati sutrašnji datum: <? php $sutra=mktime(0, 0, 0, date("m"), date("d")+1, date("Y")); echo "Sutra je ". date("d/m/Y", $sutra); ? >
Danas i sljedeće sedmice <? php $sljedeca = time() + (7 * 24 * 60); // 7 dana; 24 sata; 60 minuta; 60 sekundi echo 'Danas je: '. date('d-m-Y') ; echo "<br/> " ; echo 'Sljedeca sedmica: '. date('d-m-Y', $sljedeca) ; ? >
Naredba IF uz datum <? php $d=date("D"); if ($d=="Fri") echo "Ugodan Vam vikend!"; else echo "Želimo Vam uspješan dan!"; ? >
- Slides: 42