Funktio number_format

Funktio number_format mahdollistaa numeron muotoilun. Sitä käytetään pääasiassa erottamaan numeroryhmät väleillä, esimerkiksi luvusta 1234567 se voi tehdä 1 234 567.

Lisäksi funktio mahdollistaa desimaaliosan merkkien määrän säätelyn. Tämä määrä määritetään toisella valinnaisella parametrilla.

Esimerkiksi murtoluvusta 12345.6789 voidaan tehdä murtoluku 12 345.68 - funktio asetaa välit numeroryhmien väliin ja pyöristää murtoluvun kahteen desimaaliin.

Kolmas valinnainen parametri määrittää desimaalierottimen (oletusarvoisesti piste, mutta sitä voi vaihtaa). Kolmannen parametrin kanssa tulee aina olla mukana neljäs parametri - se asettaa numeroryhmien erottimen (oletusarvoisesti pilkku, mutta sitä voi vaihtaa, esimerkiksi välilyönniksi). Eli oletusarvoisesti funktio erottaa numeroryhmät pilkuilla: luvusta 1234567 tulee 1,234,567.

Syntaksi

phpnumber_format(float $num, int $decimals = 0, ?string $decimal_separator = ".", ?string $thousands_separator = ","): string
phpnumber_format(luku, desimaalien määrä);
phpnumber_format(luku, desimaalien määrä, desimaalierotin, tuhannerotin);

Esimerkki

Erotetaan numeroryhmät pilkulla:

php<?php
  echo number_format(1234567);
?>

Koodin suorituksen tulos:

php'1,234,567'

Esimerkki

Erotetaan numeroryhmät pilkulla, ja pyöristetään desimaaliosa kahteen desimaaliin:

php<?php
  echo number_format(1234.567, 2);
?>

Koodin suorituksen tulos:

php'1,234.57'

Esimerkki

Erotetaan numeroryhmät välilyönnillä, pyöristetään desimaaliosa kahteen desimaaliin, ja käytetään desimaalierottimena kauttaviivaa:

php<?php
  echo number_format(1234.567, 2, '/', ' ');
?>

Koodin suorituksen tulos:

php1 234/57

Esimerkki

Erotetaan numeroryhmät välilyönnillä, pyöristetään desimaaliosa kahteen desimaaliin, ja käytetään desimaalierottimena pistettä:

php<?php
  echo number_format(1234.567, 2, '.', ' ');
?>

Koodin suorituksen tulos:

php1 234.57

Katso myös

  • funktion printf,
    joka muotoilee merkkijonon