PHP dispone di un set molto ricco di funzioni matematiche, funzioni, cioè, attraverso le quali è possibile operare coi numeri e svolgere operazioni come il cacolo del minimo e del massimo, effettuare arrotondamenti, ecc.
Le math functions di PHP sono davvero parecchie, tuttavia in questa sede ci limiteremo a presentarvi le funzioni matematiche più utilizzate nell’ambito della normale attività di sviluppo, tralasciando quelle più complesse il cui ambito di utilizzo pratico è decisamente più ristretto.
Calcolare minimo e massimo con min() e max()
In PHP esistono le due funzioni max() e min() che estraggono, rispettivamente, il valore massimo e minimo da una serie di due o più numeri o all’interno di un array.
Si tratta di due funzioni matematiche particolarmente utili in svariati contesti applicativi, ad esempio: qual’è la migliore offerta per un prodotto? qual’è il veicolo più vecchio? e così via.
Vediamo, di seguito, come funzionano queste due funzioni:
// estraggo il valore minimo da una serie
$minimo = min(54,23,4,59,2);
// estraggo il valore massimo da una serie
$minimo = max(54,23,4,59,2);
Nel nostro esempio il valore della variabili $minimo sarà 2, il valore della variabile $massino sarà 59.
Vediamo ora come utilizzare le due funzioni in oggetto non su una serie di numeri passati in argomento (come nell’esempio precedente) ma su un array.
// definisco un array di numeri in ordine sparso
$mia_array = array(3,12,34,543,213,21,56,78,90);
// calcolo il valore minimo
$minimo = min($mia_array);
// calcolo il valore massimo
$massimo = max($mia_array);
Nel nostro esempio il valore della variabili $minimo sarà 3, il valore della variabile $massino sarà 543.
Vediamo ora come estendere le funzioni max() e min().
Arrotondare un numero decimale: ceil(), floor(), round()
In determinate situazioni può essere utile disporre di funzioni ad hoc per effettuare l’arrotondamento di un numero decimale. PHP ne mette a disposizione ben tre:
- ceil(): arrotonda un numero decimale all’intero superiore;
- floor(): arrotonda un numero decimale all’intero inferiore;
- round(): arrotonda un numero decimale specificando il livello di precisione (numero di decimali).
Vediamo alcuni esempi:
echo ceil(3.5); // 4
echo floor(4.8); // 4
echo round(4.1221, 2); // 4.12
Calcolare la radice quadrata con sqrt()
Una utilità piuttosto comoda può essere il calcolo della radice quadrata. Per effettuarlo è sufficiente utilizzare la funzione sqrt() in questo modo:
echo sqrt(9); // 3
Calcolare un numero randomico
Può sembrare, a prima vista, un afunzione poco utile ma in realtà non è così. Sono parecchie le situazioni in cui può essere utile calcolare un numero casuale. Per farlo PHP ci mette a disposizione la funzione rand() che possiamo usare in questo modo:
echo rand(); // 342
echo rand(); // 12887
echo rand(); // 6801
Conclusioni
In questa lezione della nostra guida PHP abbiamo fatto una breve carrellata delle funzioni matematiche più utilizzate. Come detto ne esistono molte altre atraverso le quali è possibile effettuare calcoli matematici complessi come, ad esempio, il calcolo dell’arco, del coseno, della tangente… funzioni il cui ambito di utilizzo pratico è talmente limitato da rendere la loro trattazione in questa sede decisamente superflua ai fini del nostro percorso didattico.