Considerando ancora i parametri reali passati ad una funzione, nel linguaggio di programmazione PHP esistono dei casi – ma non sono uno standard – in cui una funzione è utilizzata e chiamata ricevendo un numero di parametri reali inferiore ai parametri formali dichiarati nella funzione.
Se provassimo a togliere dei parametri reali nei nostri esempi precedenti, sicuramente avremmo un errore.
Quindi, come funziona, esattamente, il passaggio di meno parametri reali del previsto?
Tramite il parametro di default, in questi casi, prevediamo che la funzione, nel caso in cui dovesse ricevere meno parametri reali di quanti ne occorrano, debba funzionare restituendoci una valore base (di default).
<?php $num1=24; $num2=37; function sum($number1, $number2 = 100){ return $number1+$number2; } $sumResult1=sum($num1); echo "Il risultato della somma con parametro di default é: $sumResult1 \n"; $sumResult2=sum($num1,$num2); echo "Il risultato della somma senza parametro di default é: $sumResult2 \n"; //In output avremo: //Il risultato della somma con parametro di default é: 124 //Il risultato della somma senza parametro di default é: 61 ?>
Come vediamo nel risultato, nel momento in cui passiamo un solo parametro reale, la funzione utilizzerá il parametro di default per portare a termine il suo compito (ovvero, in questo caso, fare la somma di due numeri). Nel caso in cui, invece, passiamo due parametri verranno utilizzati i parametri reali ricevuti tralasciando quello di default.