localeconv în PHP

Returnează formatele numerice ale setării regionale curente: separator zecimal, separator de mii, simbol monetar.

Sintaxă
localeconv(): array

Ce face localeconv

localeconv citește regulile de formatare a numerelor și a sumelor de bani din setarea stabilită cu setlocale. Cheile cele mai folosite sunt decimal_point, thousands_sep, currency_symbol și int_curr_symbol.

Valorile le poți da mai departe lui number_format, ca să afișezi numerele după obiceiul țării.

Ce returnează

Un tablou asociativ cu regulile de formatare.

Exemple

Exemplul 1: Setarea implicită și cea românească

<?php
$c = localeconv();
echo "C: zecimale '" . $c["decimal_point"] . "', mii '" . $c["thousands_sep"] . "'\n";

setlocale(LC_ALL, "ro_RO.UTF-8");
$ro = localeconv();
echo "ro_RO: zecimale '" . $ro["decimal_point"] . "', mii '" . $ro["thousands_sep"] . "', monedă '" . trim($ro["int_curr_symbol"]) . "'\n";

echo number_format(1299.5, 2, $ro["decimal_point"], $ro["thousands_sep"]);

Rezultat

C: zecimale '.', mii ''
ro_RO: zecimale ',', mii '.', monedă 'RON'
1.299,50

Greșeli frecvente

  • Apelezi localeconv fără setlocale înainte și primești valorile setării „C” (punct zecimal, fără separator de mii).

Comenzi înrudite

  • setlocale: Setează limba și regiunea (locale) folosite de funcțiile care depind de țară: sortare, clasificarea literelor, formate.
  • number_format: Formatează un număr cu zecimale și separator de mii, de exemplu 1.299,50.
  • nl_langinfo: Returnează o informație din setarea regională curentă: numele lunilor și zilelor, formatul datei, codarea.