back to top

PHP: le principali funzioni matematiche

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.

Pubblicitร 

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.

Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).