Negli appunti digitali di oggi dedicati a php vediamo come settare i numeri decimali da visualizzare subito dopo la virgola usando una semplice funzione.
La funzione da usare è number_format che, a partire da un numero a “x” decimali dopo la virgola ne resistuisce uno cambiato in base ai parametri che indicherete al suo interno.
Funzionamento e usi principali
Il funzionamento di base della funzione è relativamente semplice:
number_format( $numero_da_cambiare, 2); //2 indica il numero di decimali da visualizzare dopo la virgola
Se ad esempio avessimo il numero: 12345,5467 e volessimo ottenere: 12345,54 ci basterebbe procedere in questo modo:
$numero_da_mod = "12345,5467"; echo number_format( $numero_da_mod, 2); //Risultato: 12345,54
Ovviamente cambiate il numero da 2 a “X” a seconda della precisione di cui avete bisogno.
Un altro uso interessante della funzione è il cambio della formattazione. Il formato inglese (e molti altri formati) differiscono dal nostro, ad esempio per indicare le centinaia spesso negli altri paesi si usa la virgola: 1,234€ nel nostro formato corrisponderebbero a 1234€. La funzione number_format ci viene in aiuto anche in questo caso:
$numero = 1234.56; // Notazione inglese (default) $formato_inglese = number_format($numero); //Risultato: 1,235 // Formato Italiano $formato_italiano = number_format($numero, 2, ',', ' ');//prendi la virgola e sostituiscila con lo spazio //Risultato: 1 234,56
Vi invito a visionare i commenti per interessanti delucidazioni sul codice.
Conclusioni e Documentazione
Number_format è una funzione molto interessante, sopratutto se avete a che fare spesso con algoritmi con numeri o funzioni. Permette in un solo colpo di ridurre i decimali dopo la virgola a seconda delle nostre esigenze e di cambiare anche la notazione nel nostro formato senza troppa fatica. Consigliata!
[button link=”http://php.net/manual/en/function.number-format.php” color=”blue” target=”blank” size=”large”]Documentazione Ufficiale[/button]
Che ne pensi? Fammelo sapere nei commenti!
/ Formato Italiano
$formato_italiano = number_format($numero, 2, ‘,’, ‘ ‘);//prendi la virgola e sostituiscila con lo spazio
//Risultato: 1 234,56
Completamente sbagliata, come spiegazione !!!! Non stai sostituendo la virgola con lo spazio, MA:
– usa la virgola per i decimali (terzo argomento funzione)
– usa lo spazio per le migliaia (quarto argomento funzione)