PHP-ohjelmointi
PHP (Personal Home Page / Forms Interpreter) on laajalle levinnyt yleiskäyttöinen skripti-kieli, joka on ensisijaisesti suunnitelut dynaamisten WWW-sivujen kehitykseen. PHP-kieli on tyypiltään tulkattava ja itse lähdekoodi kirjoitetaan suoraan HTML-koodin sekaan.
Kuten johdannossa mainittiin on PHP-tulkattava ohjelmointikieli, jonka lähdekoodi kirjoitetaan suoraan HTML-koodin sekaan. Käytännössä PHP-tulkki lukee HTML-tiedoston ja etsii sen seasta PHP-kielen ohjelmakoodia ja sen löydettyään tulkki suorittaa välittömästi ohjelmakoodin. Edellisen perusteella PHP voi olla myös puhdasta HTML:ää [html01.php]:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Harjoitus 1</title> </head> <body> <h1>Harjoitus</h1> <p> PHP voi olla pelkkää puhdasta HTML:ää: </p> </body> </html>
Toisaalta PHP-koodiin ei tarvitse käyttää ollenkaan HTML-koodia [html01.php]::
<?php echo "Terve!"; ?>
Jotta PHP-kielistä olisi jotain iloa, voidaan sitä sijoittaa HTML-koodin sekaan. PHP-koodi merkataan HTML-koodiin omilla <?php ja ?> -merkeillä. Merkinä <?php aloittaa PHP-koodin suorituksen HTML-koodissa ja ?>-merkintä lopettaa sen suorituksen.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Harjoitus</title>
</head>
<body>
<h1>Harjoitus</h1>
<p>
<?php
echo "Hello World!";
?>
</p>
</body>
</html>PHP:n varsinainen idea on tuottaa dynaamisia WWW-sivuja. Dynaamisella WWW-sivulla tarkoitetaan WWW-sivua, joka tekee jotain ilman että joku kirjoitaa staattista HTML-koodia. Seuraavassa esimerkissä on dynaaminen WWW-sivu, joka päivittää kellon aikaa ja päivämäärää kun painaa WWW-selaimen refresh-nappia.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Harjoitus</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h1>Harjoitus</h1>
<p>
<?php
$pvm = date("d.m.Y");
$klo = date("H:i:s");
echo "Tänään on $pvm päivä ja<br>";
echo "kello on $klo<br>";
?>
</p>
</body>
</html>