Funkcije

.................... :v:e:z:b:a:m:o:
Osnovna sintaksa funkcije:
function funk($argument1,$argument2,$argument3){
//blok naredbi funkcije
}

......... ::Primer:: Funkcija sa povratnim rezultatom
PHP kod Rezultat
function zbir($broj1,$broj2){$zbir=$broj1+$broj2;
return $zbir;}
//pridruzivanje varijabli rezultata funkcije
$suma=zbir(2,2);
echo $suma ."tag_br\n";
//direktan ispis rezultata funkcije
$br1=12;
$br2=22;
echo zbir($br1,$br2);
4
34


......... ::Primer:: Davanje funkciji varijablu pomocu reference .........
PHP kodRezultat
function povecaj(&$broj,$vrednost) {
$broj+=$vrednost;
}
$neki_broj=12
povecaj($neki_broj,10);
echo $neki_broj
22


......... ::Primer:: Funkcija sa default vrednostima ........
PHP kod Rezultat
function frizider($stanje="pun") {
echo "Frizider je $stanje";
}
//ispis default vrednosti
frizider();
echo"tag_horizontalline >hr<";
//ispis dane vrednosti
frizider("prazan")
Frizider je pun
Frizider je prazan
Pri radu sa fukcijama koje imaju default vrednost bitno je da ta vrednost mora biti konstanta (string ili broj). Isto tako ukoliko funkcija ima vise argumenata od kojih je jedan ili vise imaju default vrednost oni moraju biti sa krajnje desne strane liste argumenata iza argumenata bez default vrednosti.
PHP kod Rezultat
Ova funkcija ne radi
function auti($bolji="Audi",$gori){
echo "$bolji je bolji od $gori";
}
auti("Peglice");

Ova funkcija radi
function automobili($gori,$bolji="Audi") {
echo "$bolji je bolji od $gori;
}
function("Peglice");

Fatal error: Uncaught ArgumentCountError: Too few arguments to function auti(), 1 passed in /home/vhosts/rasenix.orgfree.com/vezba/funkcije.php on line 146 and exactly 2 expected in /home/vhosts/rasenix.orgfree.com/vezba/funkcije.php:143 Stack trace: #0 /home/vhosts/rasenix.orgfree.com/vezba/funkcije.php(146): auti() #1 {main} thrown in /home/vhosts/rasenix.orgfree.com/vezba/funkcije.php on line 143