Kreiranje PHP programa
PHP program je "izmešan" sa klasičnom HTML stranicom. Server "zna" da treba da izvrši PHP pre no što pošalje finalnu stranicu korisniku, tako što ekstenzija dokumenta više nije .html, već .php.
Za razliku od JavaScripta, PHP kod nije dostupan korisniku. Program se izvršava na serveru, a korisnik dobija samo krajnji rezultat i ne može videti naredbe koje su do njega dovele.
PHP možemo ubaciti na bilo kom mestu unutar običnog HTML koda. I to kad kažemo na bilo kom, zaista mislimo na bilo kom mestu - u zaglavlju ili glavnom delu, unutar script oznake, unutar atributa neke HTML oznake... Početak PHP koda u dokumentu označavamo sa <?php, a kraj sa ?>.
...običan HTML kod
<?php
...PHP program
?>
...još HTML koda
Stranica čak i ne mora da sadrži bilo kakav slobodni HTML - sve može da bude PHP program. Isto tako, PHP možemo čak i "rasparčati" po dokumentu. Za server će oni biti jedna celina.
Dakle, stranicu koja u sebi sarži PHP, obavezno snimamo sa ekstenzijom .php (npr. "stranica.php"), a ne .html. Isto važi i za početnu stranu sajta - ako sadrži PHP program, snimamo je kao "index.php". Web server će već "znati" da je onda to početna strana našeg sajta.
Odvajanje naredbi
Jezik PHP zahteva da se posle svake naredbe obavezno navede tačka-zarez (;). Ako se ovaj znak izostavi, program neće proraditi. Ovo je jedna od najčešćih početničkih grešaka.
naredba;
naredba;
naredba;
...
Tačku-zarez ne navodimo posle bloka.
{
naredba;
naredba;
...
}
naredba;
...
Velika i mala slova
PHP ne razlikuje velika i mala slova kod:
- ključnih reči
- literala
- funkcija
if($x==5) je isto kao IF($x==5)
$x = false; je isto kao $x = FALSE;
mojaFunkcija($x, 10); je isto kao MojaFUNkcija($x, 10);
Međutim, kod naziva promenljivih i konstanti PHP razlikuje velika i mala slova.
$promenljiva = 5; NIJE isto kao $PROMENLJIVA = 5;
$x = KONST; NIJE isto kao $x = Konst;
Primer PHP programa
Evo jednog jednostavnog primera kako PHP program izgleda. Napravili smo dva PHP odeljka unutar običnog HTML koda. Koristimo naredbu echo koja bukvalno znači da ono što joj zadamo "upisuje" u HTML stranicu kao rezultat.
<h1>Naslov</h1>
<?php
echo "<p>Moj prvi PHP program!</p>";
?>
<h2>Podnaslov</h2>
<?php
// ovo je PHP komentar koji se ne izvršava
$suma = 0;
for ($i=0; $i<10; $i++) {
$suma += $i;
}
// pošto nemamo više ni jednu echo naredbu,
// korisnik neće biti svestan da se tu bilo šta izračunavalo
?>
<p>Pasus.</p>
Međutim, stranica koja stiže do korisnikovog web čitača izgleda kao običan HTML.
<h1>Naslov</h1>
<p>Moj prvi PHP program!</p>
<h2>Podnaslov</h2>
<p>Pasus.</p>