PHP

PHP je open-source skriptni jezik koji se najčešće koristi na serverima za dinamičko generiranje HTML koda. Sam naziv PHP je rekurzivni akronim koji znači "PHP: Hypertext Preprocessor". Slobodno se može preuzeti sa službenih stranica www.php.net. U razvoju PHP aktivno sudjeluje i tvrtka Zend koju su osnovali Andi Gutmans i Zeev Suraski, autori PHP 3.0.

PHP je skriptni jezik pomoću kojeg možete kreirati HTML stranicu na serveru prije nego što se ona, popunjena dinamičkim sadržajem, pošalje klijentu. Ovim načinom generiranja sadržaja klijent ne može vidjeti kod (skriptu) koji je generirao sadržaj koji gleda, već ima pristup čistom HTML kodu. Primjerice:

<html>
<head>
   <title>Primjer</title>
</head>
<body>
   <?php 
     echo "Pozdrav svijete!"; 
   ?>
</body>
</html>

Ovaj primjer koda snimljen na serveru s podrškom za PHP i učitan u browseru ispisati će "Pozdrav svijete!", dakle, korisnik je dobio običan HTML kod.

PHP je jedna od najnaprednijih i najkorištenijih server-side skriptnih tehnologija danas u upotrebi. On je po svojoj sintaksi poput mnogih drugih sličnih jezika, čak i koristi funkcije nekih drugih jezika kao što su C ili Perl. To znači da jednu radnju možete izvesti korištenjem više različitih funkcija.

Ono što PHP stavlja još više ispred ostalih web skriptnih tehnologija je njegova podrška za baratanje širokom paletom baza podataka. Podržava sve popularnije baze podataka kao što su MySQL, PostgreSQL, dBase, Oracle, MS SQL

Zahvaljujući svojim mogućnostima PHP je prilično popularan jezik. Prema Netcraftu, PHP je najčešće korišteni jezik na serverskoj strani - koristi se na preko 22 milijuna domena (milijun 283 tisuće IP adresa).

Koristenje PHP-a na serverima

Zbog svoje popularnosti PHP se počeo koristiti i u okruženjima za koje prvo nije bio namijenjen. Tako se danas može koristiti za kreiranje običnih aplikacija s korisničkim sučeljem ili za skriptiranje u komandnoj liniji.

Koja je razlika između server-side i client-side skriptnih jezika?

Server side skripte se izvršavaju na serveru (poslužitelju) kada poslužitelj primi zahtjev za PHP dokumentom. Nakon primitka zahtjeva sa PHP dokumentom poslužitelj izvršava PHP kod, na osnovu njega generira HTML kod i šalje ga klijentu. To znači da stranica koja se prikazuje u pretraživaču klijenta ne postoji u tom obliku nigdje na serveru odakle ju je klijent primio.

Glavni i najpoznatiji predstavnik client-side jezika je JavaScript. Kod pisan u JavaScriptu je obično umetnut u HTML stranicu i izvršava se tek u klijentovom pretraživaču. Ovakav kod vidljiv je svima.

Možda bi bilo najbolje malo detaljnije razmotriti razlike između njih na jednom banalnom primjeru. Recimo da želimo napisati skriptu koja prikazuje točno vrijeme negdje na stranici. Iako ovo zvuči kao vrlo banalan i lagan primjer, vidjet ćete da je ovo gotovo nemoguće izvesti. Zašto? Prvo pitanje koje si trebate postaviti je 'Koje je vrijeme točno vrijeme?'. Ono na vašem serveru ili ono na klijentovom računalu? Što god odlučili, ove dvije skripte će rijetko kada prikazati isti rezultat.

<script language="JavaScript">
  var v = new Date();
  document.write(v.getHours());
  document.write(":");
  document.write(v.getMinutes());
  document.write(":");
  document.write(v.getSeconds());
</script>

i

<?php
$str_vrijeme = date("H:i:s");
echo $vrijeme;
?>

Prvi isječak prikazuje vrijeme na korisnikovim računalu jer se izršava u browseru dok će druga prikazati vrijeme na serveru u trenutku izvršavanja.

Loše strane PHP-a

Neke kritike upućivane PHP-u su generalne zamjerke svim skriptnim jezicima ijezicima s dinamičkim tipovima podataka, no ima i nekih koje su specifične za PHP: