Funktio on erikseen kutsuttava koodikokonaisuus. Funktiota kutsuttaessa voidaan määritellä sille parametreja. Funktio voi palauttaa arvon, jolloin funktion kutsua voi käyttää lausekkeena.
Funktion voi määritellä missä tahansa PHP-koodin kohdassa. Sitä voi kutsua määrittelykohdasta eteenpäin.
Funktion määrittely on muotoa:
function nimi (parametrit) { lauseet; return tulos; }
Käytettäessä funktiota kutsutaan nimellä, siis:
$arvo = nimi($syote1, $syote2, jne);
Parametrit nimetään muuttujien tapaan ja luetellaan pilkulla eroteltuna.
Palautusarvo määritellään return-lauseella, joka myös lopettaa funktion suorituksen.
Funktiolla ei tarvitse olla parametreja eikä palautusarvoa!
Yksinkertainen esim sisältää funktion, joka palauttaa minimin kahdesta arvosta:
<?php function minimi($a, $b) { if ($a < $b) return $a; else return $b; } echo "minimi(12, 23) = " . minimi(12, 23); ?>
Koodi tulostaa:
minimi(12, 23) = 12
Funktion parametreille voidaan antaa oletusarvot, joita käytetään, mikäli käyttäjä ei niitä anna.
<?php function kustannus($matka, $litrahinta=1.5,$kulutus=10)
{ return $matka/100*$litrahinta*$kulutus; } echo kustannus(10)."<br />\n"; //Tulostaa: 1.5 echo kustannus(10, 2)."<br />\n"; //Tulostaa: 2 echo kustannus(100, 1.6, 5)."<br />\n"; Tulostaa: 8 ?>
Esimerkissä on annettu parametreille $litrahinta ja $kulutus on annettu oletusarvot, joita käytetään, mikäli funktion kutsussa ei parametreja anneta. Funktiolle ei voi antaa parametreina esimerkiksi $matka ja $kulutus. Parametrit luetaan aina määrittelyjärjestyksessä. Jos annetaan yksi parametri, se on aina $matka, ja kaksi parametria ovat aina $matka ja $litrahinta.
Tavallisesti PHP:n funktiot kannattaa sijoittaa erillisen kirjastotiedostoon, jota kutsutaan pääohjelman aluksi komennolla
require_once "funktiot.php";
Kirjastoon sijoitetaan kaikki usein toistuvat toiminnot ohjemistosta.
PHP sisältää suuren joukon valmiita funktioita, joita käytetään esimerkiksi tietokantasovellusten tekemiseen. Niitä löytää PHP:n manuaalisivustolta.