Something about everything…

PHP & MySQL vodič – osnove

PHP & MySQL vodič - osnovePHP & MySQL vodič - osnove

Sadržaj

  1. PHP – što je to?
  2. Kako radi PHP?
  3. Zašto koristiti PHP?
  4. Instalacija – Windows (WAMP)
  5. phpinfo()
  6. Umetanje
  7. Tekst – echo, print
  8. Komentari, HTML kod unutar navodnika
  9. Varijable (eng. variables)
  10. Skupovi znakova (eng. strings)
  11. Funkcije skupa (eng. string functions)
  12. Brojevi
  13. Decimalni brojevi
  14. Arrays
  15. Funkcije arraya
  16. Booleans (istina/laž)

PHP – što je to?

Prije nego što krenemo učiti PHP, moramo znati što je to.
PHP (kratica od „PHP: Hypertext Preprocessor”)

  • je skriptni jezik (ne treba se kompajlirati kao npr. programski jezik C/C++) koji se pokreće na serveru (server-side), ne na klijentovom računalu (kao npr. korisnikov internet preglednik – on je client-side), Javascript je također skriptni jezik ali je client-side što znači da se pokreće na korisnikovu računalu
  • dizajniran da se koristi zajedno s HTML-om, može se ubacivati između njega te će PHP pravilno nazad vratiti HTML baš kao i obična .html datoteka, naravno na kraju svake datoteke će stajati .php tako da server zna da se radi o PHP datoteci te je tako i tretira (ako naiđe na HTML kod unutar te datoteke, pravilno će ga prikazati) – pojednostavljeno, ako imate .html daotetku u kojoj je HTML kod, preimenujete li datoteku u .php – ništa se neće promijeniti
  • pruža puno više fleksibilnosti nego HTML sam, HTML stranice su po prirodi statične dok je PHP dinamičan – sadržaj stranice se može mijenjati npr. u interakciji s posjetiteljem ili podacima sadržanima u databazi
  • kako bi naučili PHP morate prvo znati/poznavati HTML te se njime nećemo baviti u ovome vodiču, podrazumijevat će se da ga znate odprije iako i ako ga neznate potpuno, nećete se izgubiti u ovom vodiču
  • PHP sintaksa je slična onoj u C, Java ili Perl-u, ako znate jedan od tih jezika odprije, lakše ćete se s naći u PHP-u, ako ne – ne brinite, ne trebati znati niti jedan programski jezik odprije kako bi savladali PHP. Također PHP je sličan ASP-u (Active Server Pages) koji je na neki način Microsoftova verzija PHP-a. Sve što morate znati tj. barem poznavati odprije jest naravno – HTML.

Kako radi PHP?

Kada utipkate URL u svoj web preglednik u pozadini se događa čitav proces prije nego što vam preglednik vrati nazad HTML rezultat (zajedno s izvršenim php-om).

1. Preglednik će poslati zahtjev serveru da pronađe našu željenu stranicu
2. Željena stranica će biti locirana na tvrdom disku (na serveru)
3. Pošto ima nastavak .php server će procesirati sav php kod na koji nailazi u toj datoteci
4. Tijekom procesiranja PHP će možda zatražiti da nešto izvuče van iz databaze, nešto ubaci u nju, osvježi neke podatke i sl.
5. Na kraju nakon što je sav php kod izvršen, nazad nam se šalje HTML rezultat (naravno nastavak je .php, ali mi taj procesirani php ne vidimo u Page Source-u stranice) kojeg vidimo u našem web pregledniku

PHP & MySQL vodič - osnove

Zašto koristiti PHP?

Mnogo je razloga zašto koristiti PHP umjesto drugih web-tehnologija.

  • PHP je Open Source (otvoreni kod je dostupan svima na pregled, modificiranje i sl.) / besplatan softver
  • cross-platform – funkcionira na Windows/Linux/MAC serverima bez imalo problema, te također korisnici ga mogu razvijati i koristiti u bilo kojem navedenom operativnom sustavu
  • moćan, robustan i skalabilan – to što je besplatan ne znači da nije stabilan ili pouzdan – naprotiv
  • PHP je odpočetka razvijan kao isključivo web-tehnologija – sve funkcije su namijenjene za web
  • sjajna dokumentacija u mnogo jezika (http://php.net/docs.php)
  • ogromna zajednica razvijetelja PHP-a te široka zajednica korisnika – 20 milijuna web-stranica temeljenih na PHP-u u skladu sa Apache serverima, 4. najpopularniji jezik iza Java, C i C++. Zajednica je već kreirala neke sjajne PHP aplikacije npr. WordPress, Joomla, Mambo, phpDB ili MediaWiki – to su sve besplatni alati koje možete skinuti kako bi si olakšali kreiranje vlastitih web-stranica. Kako ćete napredovati u PHP-u tako ćete se bolje snalaziti u gore navedenim aplikacijama te ih modificirati po svojim željama kako bi vama više odgovarale

Instalacija (Windows – WAMP)

Za pokretanje PHP-a u svom pregledniku kako bi ga mogli učiti na svoje računalo trebat ćete instalirati:

  • web server – u našem slučaju Apache, instalirat ćete ga na Vaše lokalno računalo
  • PHP – da web server može razumijeti .php datoteke te ih slati nazad u web preglednik
  • databazu – kako bi mogli kreirati PHP aplikacije koje će se spajati na tu bazu
  • text editor – kako bi mogli editirati .php datoteke – preporuka Dreamweaver/PHP Designer ili pak možete to isto u Notepadu/Wordpadu
  • web preglednik – bilo koji preglednik (IE/Firefox/Opera/Safari) će raditi

Radit ćemo lokalno što znači da će te web server instalirati na svoje računalo, preglednik vjerojatno već imate te na vlastitom računalu i editirati .php datoteke.

Najlakša instalacija je već pomoću kreiranih paketa za određene operativne sustave – LAMP (Linux, Apache, MySQL, PHP), WAMP (Windows, Apache, MySQL, PHP) ili MAMP (Machintosh, Apache, MySQL, PHP). Najviše ljudi će koristiti Apache, MySQL i PHP neovisno o platformi – 75% web stranica nalazi se na Apache serverima, 20% na Microsoft serverima te 5% na ostalima.

Skinite WAMP sa službene stranice, te pokrenite instalaciju.

Na samom početku upozorit će vas da ne nadograđujete na novu verziju ako prije niste maknuli staru. Slobodno odaberite Yes.

PHP & MySQL vodič - osnove

Klik na Next.

PHP & MySQL vodič - osnove

Označiti I aceept the agreement. Klik na Next.

PHP & MySQL vodič - osnove

Odaberite lokaciju gdje će se WAMP instalirati, možete ostaviti kako je – c:\wamp. Klik na Next.

PHP & MySQL vodič - osnove

Po volji označite Create a Desktop icon te klik na Next.

PHP & MySQL vodič - osnove

Klik na Install.

PHP & MySQL vodič - osnovePHP & MySQL vodič - osnove

Ako imate instaliran Firefox prepoznat će ga te će vas pitati želite li da ga podesi kao svoj defaultni preglednik – odaberite Yes.

PHP & MySQL vodič - osnove

Postavke e-maila i SMTP-a ostavite kako jesu. Klik na Next.

PHP & MySQL vodič - osnove

Ostavite označeno Launch WampServer 2 now i klik na Finish.

PHP & MySQL vodič - osnove

Instalacija je završena te sada na svojem računalu imate instaliran Apache web server, MySQL databazu te PHP – potrebno je još podesiti nekoliko postavki te tada možete krenuti učiti sam PHP.

USPUTNA NAPOMENA: Poslije instalacije ako kaže da Windows Firewall blokira WAMP – slobodno kliknite na Unblock.

U donjem desnom kutu nalazi se izbornik WAMP paketa. Start/Stop/Restart All Services se odnosi na Apache, MySQL te PHP te će ih pokrenuti, zaustaviti ili pak restartati (restart će biti potreban kada se mijenjaju konfiguracijske datoteke).

PHP & MySQL vodič - osnove

Kliknite na Start All Services te će se pokrenuti svi servisi.

PHP & MySQL vodič - osnove

To što vam je server Offline – ne brinite oko toga i nemojte ga stavljati Online. Postavke PHPa možete mijenjati putem konfiguracijske datoteke (C:\wamp\bin\php\php5.2.6\php.ini) ili jednostavnije i brže putem PHP – PHP Settings gdje ih možete (neke osnovne, naravno ne sve) jednostavno uključiti ili isključiti.

PHP & MySQL vodič - osnove

Među njima nalazi se i display_errors koja će dok pišete/učite PHP pokazivati greške te ćete iste lakše pronaći i eliminirati te također možemo uključiti/isključiti koje greške će pokazivati, a koje ne.

PHP & MySQL vodič - osnove

Zaputite se u konfiguracijsku datoteku (C:\wamp\bin\php\php5.2.6\php.ini) te je otvorite Notepadom ili klikom na WAMP – PHP – php.ini. Odscrollajte do naslova „Error handling and logging“.

PHP & MySQL vodič - osnovePHP & MySQL vodič - osnove

Želimo da se prikazuju sve greške te ćemo to učiniti tako da komentiramo liniju error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT staveći ispred znak ;. Zatim kopirajte liniju (bez početnog znaka ;) te zalijepite red ispod. Nakon toga u novom redu (koji nije komentiran) maknite sve iza E_ALL tako da vam ostane samo error_reporting = E_ALL.

PHP & MySQL vodič - osnove

Spremite datoteku te zatvorite. Zatim u WAMP menuu odaberite Restart all Services kako bi promjena bila važeća.

PHP & MySQL vodič - osnove

Slijedeća i posljednja stvar koju trebamo napraviti jest postaviti root lozinku za MySQL koja po defaultu ne postoji. Zaputite se WAMP – MySQL – MySQL Console.

PHP & MySQL vodič - osnove

Tražit će vas password koji ne postoji te zato samo pritisnite Enter.

PHP & MySQL vodič - osnove

Slijedeće utipkajte use mysql te pritisnite Enter – trebalo bi odgovoriti sa Database changed.

PHP & MySQL vodič - osnove

Slijedeće UPDATE user – pritisnite Enter. Zatim SET Password=PASSWORD(‘vaš_password’) te Enter (naravno vaš_password zamijenite sa svojime – bez šđžćč znakova).

PHP & MySQL vodič - osnove

U novom redu WHERE user=’root’; čime ćemo staru lozinku zamijeniti s novom, pritisnite Enter – ispisat će vam Query OK.

PHP & MySQL vodič - osnove

Posljednje što morate utipkati prije nego krenemo dalje jest FLUSH PRIVILEGES; – pritisnite Enter.

PHP & MySQL vodič - osnove

Na kraju quit i opet Enter. Ako ćete ponovno htjeti ući u konzolu, ako pritisnite Enter i ne upišete novu lozinku – izbacit će vam grešku i zatvoriti prozor jer smo postavili novu lozinku. Sada smo instalirali WAMP paket sa Apache, MySQL i PHP-om te konfigurirali potrebne postavke. Možemo krenuti sa samim PHP-om.

phpinfo()

Prije svega provjerite radi li WAMP server kako valja. To možete provjeriti tako što utipkate localhost u svoj preglednik (ja ću koristiti Firefox). Ako se prikaže bijela stranica, znači da WAMP server nije pokrenut tj. servisi nisu pokrenuti. Ako je sve ispravno trebali biste dobiti ovu stranicu

PHP & MySQL vodič - osnove

Vaši budući folderi i datoteke koje ćete kreirati nalaze sa na disku na slijedećoj lokaciji C:\wamp\www. Na toj lokaciji kreirajte zaseban folder (npr. php) koji će se na localhost-u prikazivati kao Your Projects. U njega ćete stavljati daljnje datoteke, podfoldere i sl.

PHP & MySQL vodič - osnove

Sada kada ste kreirali svoj radni prostor možemo početi raditi na vlastito kreiranim datotekama. Otvorite svoj tekst editor (ja ću koristiti Adobe Dreamweaver CS3) te spremite novu sada praznu datoteku pod imenom phpinfo.php u prethodno kreirani folder php na lokaciji C:\wamp\www tj. putanja datoteke će biti C:\wamp\www\php\phpinfo.php.

PHP & MySQL vodič - osnove

Napišite slijedeće

<?php phpinfo(); ?>

te spremite dokument (u daljnjem tekstu spremanje prije otvaranja u pregledniku će se podrazumijevati) pod imenom phpinfo.php u svoj radni folder (C:\wamp\www\php). Zatim phpinfo.php datoteku pokrenite u svom pregledniku (http://localhost/php/phpinfo.php). Trebali biste dobiti slijedeće

PHP & MySQL vodič - osnove

Prikazati će vam sve informacije o PHP-u (u našem slučaju verzija 5.2.6). Ta mala funkcija će vam pokazati sve informacije koje vas zanimaju, je li PHP uopće instaliran na Vaš sustav te koja je trenutna konfiguracija. Tu funkciju nikada ne smijete koristiti na javnom web-serveru (podaci koje će prikazati mogu uvelike narušiti sigurnost Vaših web stranica) nego samo onda kada lokalno pišete php kod, tada će vam biti vrlo korisna. Stvar koju želimo provjerti jest display_errors pa odscrollajte do sekcije PHP Core te pronađite liniju gdje piše display_errors – mora biti postavljena na ON (kao što smo ranije postavili u konfiguracijskoj datoteci). Ta opcija će nam omogućiti da vidimo greške koje dolaze nazad od strane servera ali samo lokalno, dok ćemo kod javnih servera htjeti to isključiti kako ne bi bile dostupne javnosti.

PHP & MySQL vodič - osnove

Umetanje

Pomoću funkcije dobili smo konfiguraciju PHP-a, ali od čega se zapravo sastoji ta funkcija? Sastoji se od 3 dijela. 1. i 3. dio su tagovi koji označavaju gdje počinju, a gdje završavaju php naredbe. Rekli smo da se php naredbe u .php datoteci mogu ubaciti između HTML-a i upravo na taj način, pomoću ovih dvaju tagova server zna gdje počinje, a gdje završavaju php naredbe. Što znači da prestane te nastavi sa klasičnim HTML kodom. Primjer kako to izgleda u praksi:

<head>
<title>Umetanje PHP-a između HTML-a</title>
</head>
<body>
 
Ovo je tekst napisan u HTML-u. <br />
Bla bla bla. Red ispod počinje php, te na kraju reda završava php.
 
<?php phpinfo(); ?>
 
Ovdje je opet HTML tekst tj. <strong>HTML</strong> naredbe.
 
</body>
</html>

Umjesto tagova postoji i skraćeni oblici

<? ?>
<?= ?>

Većinu puta će i oni raditi međutim tretiraju se kao loša praksa tj. naučite se koristiti standardne tagove . Postoje još i ASP stil tagova koji izgledaju ovako

<% %>
<%= %>

To se smatra vrlo lošom formom jer što je najbolje – niti ne radi uvijek, također treba u konfiguracijskoj datoteci dopustiti korištenje ovakve forme što znači da će raditi na jednom serveru dok na drugom – neće.

Razmak između ta 3 dijela označuje gdje jedna naredba završava, a druga počinje te nije ovisan o veličini razmaka (a.k.a. “bijeli prostor”) tj. možemo napisati

<?php phpinfo(); ?>

što je sasvim isto kao i

<?php 
    phpinfo(); 
?>

što nam omogućuje veću preglednost koda bez imalo razlike u izvršavanju tih naredbi.

Tekst – echo, print | tekst.php

Otvorite novu .php datoteku koja će izgledati ovako (obratite pozornost da postavite ime stranice između <title> tagova)

<html>
<head>
<title>Tekst</title>
</head>
<body>
 
</body>
</html>

Između php tagova upišite slijedeće

echo "Tekst u PHP-u";

tj. izgledat će ovako

<?php echo "Tekst u PHP-u"; ?>

To je osnovna struktura php tvrdnje – imamo što ćemo raditi, što je u našem slučaju echo koji ispisuje zadano (slična/ista naredba je i print), objekt te naredbe/funkcije što je “Tekst u PHP-u” te ; na kraju koji označavaju da je kraj jedne instrukcije (ako ih ne stavite, php će izbaciti grešku). Međutim ako imate jednu tvrdnju u jednom redu kao što je ovo

<?php echo "Tekst u PHP-u" ?>

php će znati da je kraj instrukcije i sve će proći kako treba, međutim steknite naviku stavljanja znaka ; (točka-zarez) na kraju svake tvrdnje.

Spremite datoteku pod nazivom tekst.php u svoj radni folder (C:\wamp\www\php) te je otvorite u svom pregledniku. Dobit ćete slijedeće

PHP & MySQL vodič - osnove

Ako zavirite u Page Source stranice (desni klik – View Page Source) vidjet ćete HTML kod, ali ne i PHP koji je „nestao“ tj. web server ga je izvršio i prikazao nam ga u obliku teksta tj. „Tekst u PHP-u“ u našem pregledniku.

Vratite se u svoju .php datoteku te na kraju postojeće linije dodajte HTML <br /> tag koji će nam “odvojiti” naredbe koje pišemo. Ispod postojećeg php koda dodajte slijedeće

<?php print "Tekst u PHP-u"; ?> <br />
<?php echo "Tekst" . " u PHP-u"; ?> <br />

Posljednja linija s točkom u sredini spaja u našem slučaju dvije riječi. Spremite I Otvorite U Pregledniku (u daljnjem tekstu ću koristiti kraticu SIOUP).

PHP & MySQL vodič - osnove

Vidjet ćete da print funkcija radi isto što i echo iako neki kažu da je sporija, ali svakako echo je najpopularnija.

Na kraju dodajte još jednu liniju koda te SIOUP.

<?php echo 5+8; ?> <br />

PHP & MySQL vodič - osnove

Vidjet ćete da je php izvršio jednostavnu računsku operaciju tj. zbrojio ta dva broja (ako zavirite u Page Source vidjet ćete samo 13, ne i 5+8).

Komentari, HTML kod unutar navodnika

Kako bi bili/postali dobar programer ne smijete zaboraviti jedan bitan dio svakog programskog jezika a to su – komentari. Oni nas upućuju što želimo napraviti, kojim redoslijedom te o čemu se zapravo radi. Također, ako netko drugi pregledava Vaš kod – da odmah zna što se htjeli s određenim dijelom koda. Postoji više načina kako to možemo napraviti u PHP-u:

Single-line comments – komentar u jednome redu

// ovo je komentar u jednome redu
# ili ovako

Multi-line comments – komentar u više redova

/* Ovo je komentar
koji ima više
redova */

Isprva ćete možda zaboravljati postaviti komentare, no međutim kada nakon par mjeseci krenete pregledavati svoj kod – nećete se snaći. Zato steknite tu naviku da komentirate svoj kod. NAPOMENA: pazite da multi-line komentari imaju samo jedan početak i samo jedan kraj, u tome će vam pomoći tekst editori koji kod obojaju u razne boje.

Također unutar php tagova možemo ubaciti HTML kod koji će se tako i ponašati. Uzmimo primjer koji smo imali

<?php echo "Tekst u PHP-u"; ?> <br />

to možemo napisati i kao

<?php echo "Tekst u PHP-u<br />"; ?>

te će se sav tekst unutar navodnika ponašati kao HTML kod.

Varijable (eng. variables) | varijable.php

U pisanju PHP-a postoji više tipova ili struktura koje možemo koristiti. Prve koje ćemo upoznati su – varijable. Ako ste već prije nešto programirali vrlo vjerojatno ste već upoznati s ovim terminom, ako niste – varijabla je simbolički prikaz neke vrijednosti. Bit će u praksi mnogo jasnije no ona se s vremenom može mijenjati tj. varirati.

U PHP-u varijable:

  • počinju sa znakom $
  • nastavljaju se sa slovom ili donjom crticom (_)
  • mogu sadržavati slova, brojke, donje crtice ili povlake
  • ne smiju sadržavati razmak jer će PHP misliti da je kraj imena varijable te će raditi nešto sasvim drugo
  • su case-sensitive što znači da velika i mala slova su bitna i ove dvije varijable su posve različite: ovojevarijabla i ovojeVarijabla

Primjeri pisanja varijabla:

  • $varijabla
  • $Varijabla
  • $mojaVarijabla
  • $moja_varijabla
  • $varijabla5
  • $_varijabla – kasnije ćemo naučiti da php crticu na početku koristi kako bi definirao tip varijable, stoga je bolje ne koristiti za imena vlastitih varijabli
  • $moja-varijabla – povlaka izgleda kao minus znak te će ubuduće kod kompleksnijeg koda zbunjivati
  • $__varijabla – teško je iz prve reći koliko je crtica povučeno te se također teško snaći

Otvorite prošlu datoteku tekst.php, izbrišite sve između tagova, izmijenite Title u „Varijable“ te spremite (Save As…) kao varijable.php.

Napišite (uvijek ćete pisati između tagova) slijedeće

<?php 
    $var1 = 5; 
?>

$var1 jest ime varijable, a 5 njena vrijednost jer smo rekli da je varijabla simbolički prikaz neke vrijednosti.

Dodajte (uvijek ćete dodavati između php tagova u zadnji red) slijedeće

echo $var1;

Tako da dobijete slijedeće

<?php 
    $var1 = 5; 
    echo $var1;
?>

Što znači da će nam echo naredba ispisati vrijednost varijable $var1 – broj 5 (govorim broj jer varijable mogu biti puno više od samo brojeva). SIUOP.

PHP & MySQL vodič - osnove

Dodajte slijedeće:

$var2 = "Ovo je tekst";
echo $var2;

SIOUP i vidjet ćemo da je naredba echo ispisala vrijednost varijable $var2 koja je u ovom slučaju “Ovo je tekst”, ne i njezino ime.

PHP & MySQL vodič - osnove

Kako smo rekli varijable mogu varirati tj. njihove vrijednosti možemo izmijeniti pa dodajte ove dvije linije koda te SIOUP.

echo "<br />";
$var1 = 7;
echo $var1;

PHP & MySQL vodič - osnove

Očekivano varijabla se promijenila u 7 tj. njena vrijednost se promijenila iz 5 u 7 iz čega možemo zaključiti da varijable možemo mijenjati što nam omogućuje puno veću fleksibilnost pisanja koda, samim time i veću dinamičnost web stranica.

Skupovi znakova (eng. strings) | strings.php

Nakon što smo naučili što su varijable, krenimo na slijedeći tip/strukturu koju ćemo vrlo često koristiti, a to su – skupovi znakova (eng. strings). Zapravo, već smo ih koristili međutim nismo ih bili svjesni. U kodu

$var2 = "Ovo je tekst";
echo $var2;

slijedeći dio “Ovo je tekst” jest – skup znakova (brojevi, slova i sl.).

Otvorite prošlu datoteku varijable.php, izbrišite sve između php tagova, izmijenite Title u „Skupovi znakova“ te spremite (Save As…) kao skupznakova.php.

Kao što smo i prije imali vrlo jednostavnu verziju skupa znakova u obliku

echo "Ovo je tekst";

naučili smo da unutar tog skupa možemo staviti i običan HTML kod

echo "Ovo je tekst <br />";

Skup također možemo definirati i pomoću jednostrukih navodnika

echo 'Ovo je tekst';

te naposlijetku smo vidjeli da skupovi mogu biti dodijeljeni nekoj varijabli

$moja_varijabla = "Ovo je tekst";
echo $moja_varijabla;

Možemo imati i slijedeću verziju gdje spajamo postojeću varijablu sa nekim novim skupom

echo $moja_varijabla . " koji je vrlo jednostavan";

Stavimo dodatne <br /> tagove kako bi nam rezultat bio lijepo složen te bi kod trebao izgledati ovako

<?php
    echo "Ovo je tekst"; echo "<br />";
    echo "Ovo je tekst <br />";
    echo 'Ovo je tekst <br />';
    $moja_varijabla = "Ovo je tekst";
    echo $moja_varijabla;
    echo "<br />";
    echo $moja_varijabla . " koji je vrlo jednostavan";
?>

a rezultat očekivano ovako

PHP & MySQL vodič - osnove

To su primjeri koje smo već prije upoznali te isprobali, sada ćemo krenuti na neke nove i malo složenije. Dodajte slijedeće iza postojećih php tagova

<br /> <br />
<?php
?>

Između php tagova napišite slijedeće

echo "$moja_varijabla koji je vrlo jednostavan";

PHP & MySQL vodič - osnove

Uzeli smo već postojeću varijablu te je ubacili u novi skup te stvar funkcionira – koristi već postojeću definiranu varijablu te je “spaja” s ostatkom skupa. Ovakav načina koda će funkcionirati međutim bolja navika je kod pisati na slijedeći način (svakako između pojednih naredbi postavite <br /> tag – echo<br />“;)

echo "{$moja_varijabla} koji je vrlo jednostavan (sa zagradama).";

PHP & MySQL vodič - osnove

tj. varijablu unutar skupa pisati u {zakrivljenim zagradama} tako da PHP točno zna što se odnosi na ime same varijable (iako zagrade se naravno neće prikazivati) jer ako tih zagrada ne bi bilo, u slijedećoj situaciji PHP bi ime varijable te sam sadržaj skupa postavio kao ime varijable (glasilo bi moja_varijablakoji) te kod ne bi bio “dobar” (varijabla bi bila “prazna” tj. nedefinirana)

echo "$moja_varijablakoji je vrlo jednostavan";

PHP & MySQL vodič - osnove

Međutim ako ime varijable stavimo u zakrivljene zagrade

echo "{$moja_varijabla}koji je vrlo jednostavan";

PHP & MySQL vodič - osnove

stvar će savršeno raditi te će definiranu varijablu i ostatak skupa spojiti bez problema i to bez razmaka među njima. Ako umjesto dvostrukih stavite jednostruke navodnike stvar neće raditi (neće napraviti “zamjenu” varijable njenom definicijom nego će jednostavno prikazati ime same varijable kao tekst) kao u slijedećem primjeru

echo '$moja_varijabla koji je vrlo jednostavan';

PHP & MySQL vodič - osnove

stoga imajte naviku stavljati dvostruke navodnike.

Funkcije skupa (eng. string functions) | string_functions.php

Sada kada smo naučili što su to skupovi, kako ih spojiti međusobno, kako ih prikazati u prgledniku i sl. tu je puno toga što još možemo raditi s njima. Za to će nam trebati funkcije skupa (eng. string functions).

Otvorite prošlu datoteku skupznakova.php, izbrišite sve između <body> tagova, izmijenite Title u „Funkcije skupa“ te spremite (Save As…) kao funkcijeskupa.php.

Napišite slijedeće:

<?php
    $prvi_skup = "Ovo je tekst";
    $drugi_skup = " koji je vrlo jednostavan.";
?>

Definirali smo prvi_skup koji je jednak “Ovo je tekst” te drugi_skup koji je jednak ” koji je vrlo jednostavan.” Prije smo naučili kako ih međusobno spojiti međutim postoji još jedan način spajanja tj. “ulančavanja”. Definirat ćemo treci_skup koji će biti jednak prvome

<?php
    $treci_skup = $prvi_skup;
?>

te nakon toga mu još pridodati drugi_skup (znak .= znači da će spojiti ta dva skupa te će naposlijetku rezultat biti jednak “spoju” ta dva skupa). Na kraju ćemo prikazati naš treci_skup. SIOUP.

$treci_skup .= $drugi_skup;
echo $treci_skup;

PHP & MySQL vodič - osnove

Ako želimo prikzati prvi i drugi skup oni će i dalje biti jednaki kao što su definirani na početku (“Ovo je tekst” i ” koji je vrlo jednostavan”), međutim treći skup će sadržavati novu vrijednost koja će biti kombinacija dviju. Nismo ništa radili/mijnjeli prvi ili drugi skup nego smo jednostavno ih upotrijebili kako bi kreirali naš treći skup. Funkcija funkcionira kao i naredba echo koju smo prije upotrebljavali, samo sada nećemo prikazivati (echo) naš skup nego ćemo na njega primijeniti drugu naredbu (konkretno u našem primjeru .=). Također postoji mnogo funkcija koje možemo koristiti (cijelu listu potražite na php.net), neke od njih su koje ćemo pokazati i na primjeru

<br />
Mala slova: <?php echo strtolower($treci_skup); ?><br />
Velika slova: <?php echo strtoupper($treci_skup); ?><br />
Prvi znak ce biti veliko slovo: <?php echo ucfirst($treci_skup); ?><br />
Veliko slovo svake rijeci: <?php echo ucwords($treci_skup); ?><br />

PHP & MySQL vodič - osnove

strtolower – cijeli skup pretvara u mala slova
strtoupper – cijeli skup pretvara u velika slova
ucfirst – samo prvi znak će biti veliko slovo (u našem slučaju samo početak rečenice)
ucwords – veliko slovo će biti na početku svake od riječi u našem skupu

Vidjeli smo da ispred naših novih funkcija stoji još jedna funkcija echo – to je sasvim u redu jer naravno funkcije mogu “komunicirati” jedna s drugom.

Pogledat ćemo još par ostalih funkcija

<br />
Duljina: <?php echo strlen($treci_skup); ?><br />
Trim: <?php echo $cetrvti_skup = $prvi_skup . trim($drugi_skup); ?><br />
Traži: <?php echo strstr($treci_skup, "tekst"); ?><br />
Zamijeni: <?php echo str_replace("vrlo", "jako", $treci_skup); ?><br />

PHP & MySQL vodič - osnove

strlen – duljina skupa (u našem slučaju broj znakova)
trim – miče/briše sav prazan prostor (razmaci, prazni redovi i sl.) na kraju ili na početku skupa/rečenice
NAPOMENA: kao što vidite trim funkciju smo stavili ispred drugog skupa koji će se spojiti sa prvime te tako kreirati novi četvrti skup koji ćemo pomoću naredbe echo prikazati – prije smo to radili u više redova, no vidite da se funkcije mogu međusobno kombinirati te tako i ovo napisati u samo jednome redu
strstr – tražit će određenu frazu (u našem slučaju riječ “tekst”) te će ispisati skup od te riječi pa nadalje
str_replace – zamijenit će određenu frazu (u našem slučaju riječ “vrlo”) sa drugom frazom (u našem slučaju riječju “jako”)

To su samo neke od funkcija kojima možemo manipulirati skupovima međutim ima ih jako mnogo te nema potrebe ovdje stavljati tu ogromnu listu već za sve funkcije se uputite na php.net.

Brojevi | brojevi.php

U dviju prethodnih naslova naučili smo što su to varijable i skupovi, postoji još jedan tip/struktura a to su – brojevi.

Otvorite prošlu datoteku funkcijeskupa.php, izbrišite sve između <body> tagova, izmijenite Title u „Brojevi“ te spremite (Save As…) kao brojevi.php.

Napišite slijedeće:

<?php
    $var_1 = 8;
    $var_2 = 10;
?>

Znamo što su brojevi te vidimo da su brojevi 8 i 10 pridruženi dvjema varijablama. Ranije smo već upoznali kako napraviti neke osnovne operacije pomoću echo funkcije. Pomoću varijabla možemo raditi mnogo više od pukog zbrajanja, oduzimanja i sl. te nam daje naravno više fleksibilnosti. Ovdje imamo primjer jednostavne matematike (pišite iza prvog php bloka tj. nakon prvog znaka ?>)

Jednostavna matematika: <?php echo ((3 + 4 + $var_1) * $var_2) / 3 - 5; ?><br/>

PHP & MySQL vodič - osnove

Kao što smo i očekivali rezultat je 45 zato što ćemo prikazati (echo) rezultat koji smo dobili tako što smo zbrojili 3+4+$var_1 koja je 8, pomnožili sa $var_2 koja je 10 te podijelili sa 2-5. Ranije u funkcijama skupa smo radili da smo izmijenili/osvježili vrijednost neke varijable unutar skupa. Slično možemo raditi i ovdje. Napišite slijedeće

<br />
+=: <?php $var_2 += 4; echo $var_2; ?><br />

PHP & MySQL vodič - osnove

Varijabli 2 ($var_2) pridodali smo 4 te istovremeno varijablu “izjednačili” sa rezultatom tj. varijabla će promijeniti vrijednost u 14 jer je 10 (prethodna vrijednost te varijable) + 4 jednako 14 što je i ujedno nova vrijednost varijable. Tu su još neke operacije s kojima možemo jednostavno rukovati

-=: <?php $var_2 -= 4; echo $var_2; ?><br />
*=: <?php $var_2 *= 5; echo $var_2; ?><br />
/=: <?php $var_2 /= 2; echo $var_2; ?><br />

PHP & MySQL vodič - osnove

Radit će što smo i očekivali tj. princip je isti samo je druga računska operacija. NAPOMENA: svaki put (u svakom redku) se vrijednost varijable 2 mijenja zato i u drugoj liniji gdje je oduzimanje rezultat nije 6 (10-4) već 10 zato što je u redku iznad njega osvježena ista varijabla brojem 14 (početna 10 + 4) te je rezultat 14-4=10.

Postoji još jedna varijanta ovoga a to je uvećanje i umanjenje za vrijednost 1.

<br />
Uvećanje: <?php $var_2++; echo $var_2; ?><br />
Umanjenje: <?php $var_2--; echo $var_2; ?><br />

PHP & MySQL vodič - osnove

Ako ste već programirali npr. u C jeziku, znak ++ će vam biti poznat. U našem slučaju uzima varijablu 2 te je uvećava za 1 – njena vrijednost se povećala za 1. Logično ako je bila 5 – nakon uvećanja bit će 6. Umanjenje radi istu stvar samo oduzima za 1.

Sada smo naučili raditi osnovne stvari s “osnovnim” brojevima koji se zovu cijeli brojevi (eng. integer). Postoje još i decimalni brojevi (eng. floating points numbers).

Decimalni brojevi | brojevi_dec.php

U prethodnom naslovu naučili smo što su to “osnovni brojevi” te što su (cijeli) brojevi. Ovaj naslov ćemo posvetiti decimalnim brojevima (eng. floating points numbers / floats).

Otvorite prošlu datoteku brojevi.php, izbrišite sve između tagova, izmijenite Title u „Decimalni brojevi“ te spremite (Save As…) kao brojevi_dec.php.

Napišite slijedeće:

<?php $var_1 = 8.32; ?>

Vjerojatno mislite kako je ovo samo još jedan običan (decimalni) broj, međutim tretira se malo drugačije u PHP-u te možemo pitati PHP je li taj broj zaista decimalan ili nije (o tome nešto kasnije). Za sada samo morate znati kako postoje dva tipa brojeva – obični cijeli te decimalni.

Možemo također i sami ispisati decimalan broj na način

<?php echo 4/3; ?>

te će očekivano izbaciti rezultat 1.333333333…

PHP & MySQL vodič - osnove

Objasnimo nekoliko funkcija koje možemo koristiti ako radimo s decimalnim brojevima.

<br />
Decimalni broj: <?php echo $myFloat = 8.32; ?><br />
Zaokruživanje: <?php echo round($myFloat, 1); ?><br />
Zaokruživanje na slijedeci cijeli broj: <?php echo ceil($myFloat); ?><br />
Zaokruživanje na prethodni cijeli broj: <?php echo floor($myFloat); ?><br />

PHP & MySQL vodič - osnove

echo $myFloat – ispisuje zadani decimalni broj
Slijedećih par funkcija će nešto raditi s tim zadanim brojem.
round – ispisuje zadani decimalni broj međutim zaokruženog na jedno (($myFloat, 1)) decimalno mjesto
ceil – zaokružuje broj na slijedeći cijeli broj (npr. od 8.3 to je 9, od 9.6 to je 10 i sl.)
floor – zaokružuje broj na prethodni cijeli broj (npr. od 8.3 to je 8, od 9.6 to je 9 i sl.)

Kao što smo i prije spominjali tu je još vrlo mnogo funkcija međutim nećemo ih sve spominjati jer se cijela lista nalazi na php.net. Spomenuti ćemo još nekoliko:

<br />
Apsolutna vrijednost: <?php echo abs(0-100); ?><br />
Eksponent: <?php echo pow(3, 5); ?><br />
Korijen: <?php echo sqrt(100); ?><br />
Ostatak: <?php echo fmod(30, 7); ?><br />
Random (nasumice): <?php echo rand(); ?><br />
Random (min, max): <?php echo rand(50,100); ?><br />

PHP & MySQL vodič - osnove

abs – izbacuje apsolutnu vrijednost nekog broja
pow – računa broj na n-tu, tj. prvi broj određuje bazu, a drugi eksponent
sqrt – računa korijen zadanog broja
fmod – nakon dijelenja nekog broja izbacuje njegov ostatak (ako je broj djeljiv, fmod će biti jednak 0)
rand() – izbacuje random (nasumični) broj, nema granica u kojem on može biti tj. može biti bilo koji
rand(50,100) – izbracuje radnom (nasumični) broj u granicama koje smo mu zadali (prvi broj je minimalni, a drugi maximalni kojeg može izbaciti)

Glavna stvar koju morate razumijeti jest da možemo raditi s brojevima, skupovima, definirati vrijednost varijabla itd. što nam daje mnogo fleksibilnosti u radu na nekim novim (našim) aplikacijama. Sada smo obradili osnove osnova, sada ćemo krenuti na nešto malo (naglasak malo) kompliciranije tipove/koncepte PHP-a.

Arrays | arrays.php

Sada kada smo naučili osnovne tipove kao što su brojevi, skupovi i sl. vrijeme je da krenemo na nešto malo složenije, a to su – arrays (hrv. prijevod – raspoređen niz podataka), u daljnjem tekstu samo kao – array(s). Oni će nam biti iznimno korisni u našem programiranju, no prvo ćemo reći ponešto o njima da shvatimo što su oni zapravo. Ako ne “skužite iz prve”, čitajte ponovno dok potpuno ne shvatite što su i kako funkcioniraju.

Otvorite prošlu datoteku brojevi_dec.php, izbrišite sve između <body> tagova, izmijenite Title u „Arrays“ te spremite (Save As…) kao arrays.php.

Array možemo definirati kao seriju varijabli kojima možemo dodijeljivati različite vrijednosti. Možda će vam biti jasnije ako zamislite array kao jednu mapu koja se može proširivati, u koju možete dodavati podatke u svaki od “džepova” (o.p. džep je tehnički zapravo gledano pozicija u arrayu, međutim mi ćemo ju zvati jednostavno džep). Koliko džepova može biti vas najmanje mora brinuti, ono bitno jest da u svaki od “džepova” možemo spremiti ono što i u varijablu (skup, broj ili pak drugi array). Tada možete koristiti bilo od kojih džepova prema njegovoj poziciji unutar arraya (kod varijabli se to radi tako da je pozivamo imenom). Kod arraya ćemo pozvati određeni array te poziciju “džepa” s kojim želimo raditi. Na primjeru će vam biti sve mnogo jasnije:

<?php $array_1 = array(4,5,13,18,25,49); ?>

Sada smo definirali naš prvi array – raspoređen (raspoređen iz razloga što svaki “džep” ima svoju poziciju) niz podataka. U svaki džep stavili smo po jedan od brojeva. Iz razloga što smo array definirali kao jednu varijablu (imena $array_1) možemo pozvati nazad podatak u jednom od džepova na način:

<?php echo $array_1[1]; ?>

PHP & MySQL vodič - osnove

Tražimo podatak koji se nalazi u arrayu (koji je dodijeljen varijabli $array_1) u džepu br. 1 (označava se uglatim zagradama) – tj. pozicija 1.
Iznenađeni? Kako je moglo izbaciti broj 5, a nalazi se na 2. poziciji? Trebalo je izbaciti broj 4? Dont Get It Naime, radi se o vrlo jednostavnoj stvari koju kod arraya treba uvijek imati na umu a to je da “brojanje” pozicija kreće od 0, a ne od 1 što znači da će nama 1. pozicija imati vrijednost 0, 2. pozicija vrijednost 1, 3. pozicija vrijednost 2 i tako dalje, stoga – pazite na to. Stoga ako promijenimo 1 u 0, dat će nam prvotno očekivani broj – 4.

<?php echo $array_1[0]; ?>

PHP & MySQL vodič - osnove

Kao što smo rekli u array možemo stavljati različite vrijednosti pa napravimo nešto malo drugačije

<br />
<?php $array_2 = array(8,"php","tekst","stranica", array("web", "auto", "kuca")); ?>

Kreirali smo array_2 koji u sebi sadrži skupove, brojeve te unutar sebe još jedan array (pri tome pazite na zagrade!).
Nakon toga ispisat ćemo što je u džepu vrijednosti 3 (znamo da je to 4. pozicija).

<?php echo $array_2[3]; ?>

PHP & MySQL vodič - osnove

Pokušajmo ispisati što se nalazi u džepu vrijednosti 4 (5. pozicija) – promijenite broj 3 u 4, nemojte pisati novi red koda.

<?php echo $array_2[4]; ?>

PHP & MySQL vodič - osnove

Ispisao je rezultat “Array”, ne daje nam nikakve vrijednosti unutar tog arraya već samo njega samoga. Ako želimo vidjeti što je u tom arrayu unutar početnog arrays stavit ćemo iza još jedne uglate zagrade koja će definirati poziciju unutar tog arraya.

<?php echo $array_2[4][2]; ?>

PHP & MySQL vodič - osnove

Očekivano rezultat je “kuca”. Objasnit ćemo nakratko kod koji smo napisali:
echo $array_2[4][2];

echo – ispisuje vrijednost
$array_2 - radi se o arrayu imena varijable $array_2
[4] – traži što se nalazi u džepu vrijednosti pozicije 4 (što je još jedan array)
[2] – traži poziciju unutar novog arraya vrijednosti pozicije 2 – što je “kuca”

Na isti način možemo i stavljati podatke unutar džepova, npr. umjesto “stranica” želimo imati “web”.

<?php $array_2[3] = "web"; ?>
<?php echo $array_2[3]; ?>

PHP & MySQL vodič - osnove

Možemo stavljati podatke unutar džepova, prikazivati ih nazad te količinu skupa podataka strpati u samo jednu varijablu što je glavna prednost arraya. Druga stvar je da su “sortirani” uvijek na isti način, osim ako ga mi ne promijenimo što znači da možemo kreirati liste podataka po nekom određenom redoslijedu. To će nam biti iznimno korisno kod databaza gdje ćemo imati podatke koje ćemo željeti sortirati po nekom redoslijedu npr. popis učenika po prezimenu – abecednim redoslijedom.

Ponekad nas manje zanima redoslijed podataka unutar arraya, već više s kakvom vrstom podataka radimo. Zbog toga džepovima možemo dodijeliti imena/etikete (eng. labels).

<br />
<?php $array_3 = array("ime" => "Arnold", "prezime" => "Schwarzenegger"); ?>
<?php echo $array_3["ime"]; ?>

PHP & MySQL vodič - osnove

Najprije smo zadali novi array koji se sastojao od dvije pozicije/džepa koje su dobile svoja imena, 1. poziciju smo nazvali “ime” kojoj smo dodijelili (znak =>) vrijednost “Arnold” (skupa se naziva “key value pair” – prvi dio je ključ tj. ime, a drugi dio je vrijednost tog ključa/imena) te 2. poziciju smo nazvali “prezime” te joj dodijelili vrijednost “Schwarzenegger”. Zatim smo ispisali (echo) što se nalazi u džepu imena “ime” (array["ime"]) te očekivano dobili rezultat “Arnold”.

Međutim ako probate sa brojem umjesto “ime” – neće ići zato što je to svojstvo arraya. Iznimka jest da džep koji je imao etiketu/ime – “ime” umjesto toga ima broj “1″ – tada će ići te tada možemo pozivati brojevima.

Možemo se malo i igrati te ispisati ime i prezime skupa na način da izmijenimo zadnju liniju u

<?php echo $array_3["ime"] . " " . $array_3["prezime"]; ?>

PHP & MySQL vodič - osnove

Podatke unutar arraya mijenjamo na isti način kao i prije s brojevima, samo ovdje nećemo stavljati brojeve već imena/etikete određenih džepova te ćemo opet ispisati ime i prezime.

<br />
<?php $array_3["ime"] = "Johnson"; ?>
<?php echo $array_3["ime"] . " " . $array_3["prezime"]; ?>

PHP & MySQL vodič - osnove

Očekivano, ime se promijenilo iz “Arnold” u “Johnson”.
Još jedna stvar koja će vam pomoći u arrayima jest da vidite što se nalazi u pojedinom džepu pomoću slijedeće funkcije:

< br/>
<?php print_r($array_2); ?>

PHP & MySQL vodič - osnove

print_r – print readable – dat će nam pregledan ispis svih džepova unutar arraya

Ako još stavimo i <pre> tagove da HTML poništi svo formatiranje dobit ćemo puno ljepši i pregledniji oblik što se sve nalazi u određenom arrayu

<pre><?php print_r($array_2); ?><pre>

U slijedećom naslovu bavit ćemo se funkcijama arraya kako bi mogli još više izvući iz njih te ih učiniti još korisnijim i fleksibilnijim.

Funkcije arraya | array_fun.php

U prethodnom naslovu smo obradili osnove arraya te kako funkciniraju, u ovom naslovu pozabavit ćemo se funkcijama koje možemo na njih primjenjivati te će tu doći do izražaja prava moć arraya.

Otvorite prošlu datoteku arrays.php, izbrišite sve između <body> tagova, izmijenite Title u „Funkcije arraya“ te spremite (Save As…) kao array_fun.php.

Kreirajmo jedan jednostavan array (uzet ćemo isti kao i u prethodnom naslovu)

<?php $array_1 = array(4,5,13,18,25,49); ?>

Vjerojatno ste već primijeniti da arrayi mogu biti mnogo fleksibilniji od varijabli iz nekoliko razloga – možemo izbrojati sve (popunjene) džepove

Izbroji: <?php echo count($array_1); ?><br />

PHP & MySQL vodič - osnove

count - broji koliko imamo popunjenih džepova u našem arrayu tj. koliko ih zapravo imamo definiranih

Prikazati maksimalnu/minimalnu vrijednost određenog arraya

Max: <?php echo max($array_1); ?><br />
Min: <?php echo min($array_1); ?><br />

PHP & MySQL vodič - osnove

max - traži najveću vrijednost unutar nekog arraya
min - traži najmanju vrijednost unutar nekog arraya

Još jedna stvar koja može biti moćna kod arraya (što kod varijabla ne možemo jednostavno izvesti) jest sortirati određenim redoslijedom.

<br />
Sortiranje: <?php sort($array_1); print_r($array_1); ?><br />
Obrnuto sortiranje: <?php rsort($array_1); print_r($array_1); ?><br />

PHP & MySQL vodič - osnove

sort – sortira klasičnim redoslijedom od 0 pa na dalje (od najmanjeg prema najvećem)
rsort – sortira od najvećeg prema najmanjem
NAPOMENA: primjetite da smo upotrebijeli i print_r funkciju koja nam omogućuje čitljiv ispis svih vrijednosti arraya

Postoji još nekoliko iznimno korisnih funkcija koje će nam dobro doći kada krajnjem korisniku ne želimo pomoću print_r funkcije ispisati neke vrijednosti već to napraviti na mnogo ljepši način

<br />
Implode: <?php echo $string_1 = implode(" * ", $array_1); ?><br />

PHP & MySQL vodič - osnove

implode – uzima u našem slučaju array_1, koristit će skup ” * ” da razdvoji te vrijednosti te stavi sve skupa kako bi kreirali novi skup $string_1

Obrunto od implode jest explode koji radi obrnuto:

Explode: <?php print_r(explode(" * ", $string_1)) ; ?><br />

PHP & MySQL vodič - osnove

explode - uzima u našem slučaju skup string_1, pronaći će sve dijelove koji odgovaraju ” * ” te ih koristiti kao dio gdje će razdvojiti pojedine vrijednosti
NAPOMENA: u drugom primjeru kod explode ne koristimo echo već print_r jer rezultat je array pa ga tako možemo jednostavno i čitljivo prikazati

Slijedeća funkcija jest in_array

<br />
In array: <?php echo in_array(3, $array_1); ?><br />

PHP & MySQL vodič - osnove

in_array – provjerava da li određena vrijednost (mi smo postavili da bude 3) postoji u određenom arrayu (mi smo postavili naš array_1) tj. izbacuje rezultat istina/laž (true/false) – ako je istina izbaciti će 1 što znači da broj 3 postoji u arrayu, ako ne neće ništa izbaciti što znači da vrijednost 3 ne postoji u našem arrayu

Međutim ako stavimo da provjeri postoji li vrijednost 49, izbacit će 1 što znači da postoji – samo promijenite broj 3 u 49 u već napisanom redku

In array: <?php echo in_array(49, $array_1); ?><br />

PHP & MySQL vodič - osnove

U slijedećem naslovu slijede “Booleans” tj. true/false tvrdnje, međutim posljednja funkcija će nam omogućiti pretraživanje kroz array te vidjeli postoji li određena vrijednost. Sada znamo kako možemo organizirati naše podatke, stavljati ih u array, manipulirati njima, sortirati ih što će nam biti korisno kada ćemo učiti i petlje. Potrudite se da imate dobru “podlogu” naročito iz ovog i prethodnog naslova a to su naravno – arrays.

Booleans (istina/laž) | booleans.php

U prošlom naslovu pomoću funkcije in_array dotakli smo se true/false tvrdnje što se nazivaju – booleans. U ovom naslovu pojasnit ćemo što su, kako funkcioniraju te gdje se mogu primjenjivati.

Otvorite prošlu datoteku arrays_fun.php, izbrišite sve između <body> tagova, izmijenite Title u „Booleans“ te spremite (Save As…) kao booleans.php.

Boolean je jednostavno rečeno – true/false (istina/laž). Postavimo varijablu koja će biti jednaka istini.

<?php
    $bool_1 = true;
?>

NAPOMENA: Primjetite da nema navodnika što znači da se ne radi o skupu (string) već o samom logičkom operatoru – true.

Postavimo i drugu varijablu koja će biti laž (boolean je pridružen varijabli).

<?php
    $bool_1 = true;
    $bool_2 = false;    
?>

NAPOMENA: true/false logički operatori nisu osjetljivi na velika i mala slova stoga se mogu pisati po volji – True/False, trUe/fAlse, truE/falsE i sl. ali preporuka je iz navike da se sve piše malim slovima – jednostavnije i preglednije.

Tvrdnje istina/laž će nam biti kasnije korisne kada ćemo govoriti o logičkim operatorima tj. ako je nešto istina napravi ovo, ako je laž napravi nešto drugo.

Pogledajmo što nam preglednik prikazuje u našem slučaju tj. u naše dvije varijable.

<?php
    $bool_1 = true;
    $bool_2 = false;
?>
Boolean "istina": <?php echo $bool_1; ?><br />
Boolean "laž":<?php echo $bool_2; ?><br />

PHP & MySQL vodič - osnove

Vidjet ćete da kod boolean istina izbacio vrijednost 1, no kod laž - 0 tj. ništa. Echo naredba nam to najbolje može pokazati – koncept istina/laž tj. true/false. Inače većinom nećemo vraćati pomoću naredbe echo nazad da vidimo je li istina ili ne već ćemo testirani je li istina, ako je napravi zadatak 1, ako je laž ne napravi ništa i sl. Primjer možemo testirati je li neka varijabla definirana ili ne pomoću true/false tvrdnje.

<br />
<?php
    $var_1 = 8;
    $var_2 = "tekst";
?>
Varijabla 1 je definirana: <?php echo isset($var_1); ?><br />
Varijabla 2 je definirana: <?php echo isset($var_2); ?><br />
Varijabla 3 je definirana: <?php echo isset($var_3); ?><br />

PHP & MySQL vodič - osnove

Prvo smo definirali dvije varijable te zatim pomoću funkcije isset ispitujemo jesu li one definirane ili ne, prvo tražimo je li definirana varijabla 1, pa varijabla 2 te naposljetku nedefinirana varijabla 3.

isset - funkcija koja nam pokazuje je li određena varijabla definirana ili ne tj. pokazuje nam boolean tvrdnju je li nešto istinito ili ne

Pokazuje nam vrijenost 1 kod varijabla 1 i 2 koje su definirane, no kod treće (nedefinirane) varijable pokazuje vrijednost 0 tj. ništa. To je vrlo jednostavan način da provjerimo je li neka od naših varijabla definirana ili ne te nam pokazuje kako funkcinira funkcije isset. Obrunuto od isset jest unset.

<?php unset($var_1); ?><br />
Varijabla 1 je definirana: <?php echo isset($var_1); ?><br />
Varijabla 2 je definirana: <?php echo isset($var_2); ?><br />
Varijabla 3 je definirana: <?php echo isset($var_3); ?><br />

PHP & MySQL vodič - osnove

unset - postavlja vrijednost varijable na 0/ništa/NULL/nedefinirano

Pomoću funkcije unset maknuli smo vrijednost varijable 1 tj. ona postaje nedefinirana (točnije podešena je na NULL) te pomoću funkcije isset provjeramo je su li varijable definirane te uočavamo da se kod varijable 1 vrijednost iz 1 (istina) promijenila u 0 (laž). NULL je ekvivalent – ništa/nedefinirano. Ponekad NULL i false možemo izjednačavati da se radi o istome tj. ako varijablu definiramo kao NULL ili je uopće ne definiramo u oba slučaja će izbaciti – false. U slijedećem primjeru ćemo pomoću funkcije empty testirani je li varijabla 1 prazna tj. NULL.

<br />
Varijabla 1 je prazna: <?php echo empty($var_1); ?><br />

PHP & MySQL vodič - osnove

empty - testira je li u našem slučaju varijabla prazna/nedefinirana tj. vrijednosti – NULL. Međutim morate biti oprezni s ovom funkcijom jer i neke druge stvari osim NULL/nedefinirane varijable tretira kao “false”, točnije ako vrijednost neke varijable postavimo broj 0 reći će nam da je prazna.

<?php $var_4 = 0; ?>
<br />
Varijabla 4 je prazna: <?php echo empty($var_4); ?><br />

PHP & MySQL vodič - osnove

Ista stvar se događa i sa skupom 0, tj. da broj 0 postavimo u skup – točnije kao dio teksta.

<?php $var_4 = "0"; ?>

PHP & MySQL vodič - osnove

Također možemo i podesiti vrijednost neke varijable na NULL – ništa (NULL ćete najćešće vidjeti pisano sve veliko iako je case-insensitive tj. možete pisati velika/mala slova po volji)

<?php $var_4 = NULL; ?>

PHP & MySQL vodič - osnove

Ponovno ćemo testirati i vidjeti da je varijabla 4 – opet prazna tj. ima vrijednost NULL.

To su osnove boolean tvrdnje je li nešto istina ili ne te kako rade, to je vrlo jednostavan tip međutim kasnije ćemo ih malo dublje proučavati.

Bit će nastavljeno ukoliko će biti interesa…

izvor informacija – Lynda.com

  • Google Bookmarks
  • Digg
  • Facebook
  • LinkedIn
  • Twitter
  • del.icio.us
  • RSS

Ovo bi te još moglo zanimati...

  • Nema sličnih postova.

If you are interested in colon cleanse, you may want to check out this colon cleanse information page which will have all the free information you'll need about colon cleanse.

10 komentara to “PHP & MySQL vodič – osnove”

  1. amer says:

    svaka cast

  2. Milan says:

    Pozdrav i hvala ti za sve

  3. Milan says:

    Pozdrav tebi dobri mladicu!

  4. Ivo says:

    Vrlo jasno, koncizno i bez ikakvih nepotrebnih mudrovanja. Moj Wamp server radi besprijekorno. Svaka cast.

  5. Emanuel Pietri says:

    Svaka čast majstore!
    Upravo sam postavio server zahvaljujući tebi :D
    Naravno da je potrebno da nastaviš sa radom a ako trebaš web prostora slobodno me kontaktiraj na mail – ja ga imam na tone slobodnog!

  6. Marinko says:

    Svaka čast,
    iz inata i potrebe sam naučio xhtml i css
    a sada vidim da mi treba i php :-)
    pa ajd da naučim i o tome nešto.
    http://www.marinko.org

  7. svebee says:

    nije baš da je neka navala :) tako da…ako uhvatim volje ;)

  8. Marko says:

    Pozz..

    Svaka cast na jasnim i korisnim uputama!
    Jel ce se nastavit ovaj tutor?

  9. esad says:

    OK

  10. Marija says:

    Zadivljena sam time što ste sve detaljno opisali!
    Sada moji kodovi rade!
    Nadam se da će biti nastavka!

copyright © 2012 svebee | Wordpress | RSS Feed | Sitemap