Creare delle funzioni personalizzate con variabili obbligatorie e no.
Alcune persone ogni tanto mi chiedono come possono fare delle funzioni in cui si passano delle variabili e come rendere queste obbligatorie o no.
Allora, la sintassi base per creare una funzione è questa:
function nome_funzione()
{
#Codice da eseguire nella funzione
}
Come abbiamo visto abbiamo definito la creazione di una funzione anteponendo al nome di questa la scritta function.
Dopo di che abbiamo scritto il nome della funzione, in questo caso nome_funzione.
Ora come ora questa funzione non restituirebbe nulla e non passiamo nessun valore a questa.
Ogni funzione personalizzata può contenere “infinite” opzioni per la personalizzazione e alcune volte ci torna utile assegnare ad una di queste un valore predefinito.
Supponiamo di creare una funzione per la moliptlicazione dei numeri:
function moltiplica($primo_fattore, $secondo_fattore)
{
$prodotto = ($primo_fattore * $secondo_fattore);
return $prodotto;
}
Ora, nel nostro script richiameremo la funzione in questo modo:
echo moltiplica(2, 2); // Stamperebbe 4;
In questo caso se scrivessimo:
echo moltiplica(2); // Stamperebbe 4;
Ci verrebbe restituito il seguente errore (questo è parziale):
Missing argument 2 for moltiplica()
Possiamo decidere di assegnare al secondo elemento un valore predefinito per evitare di scriverlo sempre nel caso sia quello, per esempio scriviamo la funzione moltiplica() così:
function moltiplica($primo_fattore, $secondo_fattore = 3)
{
$prodotto = ($primo_fattore * $secondo_fattore);
return $prodotto;
}
Richiamando la funzione con:
echo moltiplica(2); // Stamperebbe 3;
Però 3 è un valore standard, se noi richiamassimo la funzione così:
echo moltiplica(2, 5); // Stamperebbe 10;
Come abbiamo visto è molto semplice creare funzioni con la possibilità di decisione delle opzioni obbligatorie o no.
Poi si potranno fare eventuali controlli per vedere se i valori passati sono numeri, per esempio con la funzione is_numeric(), e magari facendo del type casting, o type juggling, forzando il valore, in questo caso anteponendo alle variabili nella moltiplicazione (int).
Spero questa guida possa tornare utile soprattutto chi si è appena avventurato nel mondo dello scripting
Tags: creare, creare funzione, funzione, guida, PHP, type casting, variabili obbligatorie
Add a Comment Trackback