PHP Conference Nagoya 2025

localeconv

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

localeconvOttiene informazioni sul formato numerico

Descrizione

localeconv(): array

La funzione restituisce un array associativo contenente le configurazioni locali per il formato numerico e monetario.

La funzione localeconv() restituisce i dati in base alle configurazioni locali come impostate da setlocale(). L'array associativo restituito contiene i seguenti campi:

Elemento Descrizione
decimal_point Carattere per il punto decimale
thousands_sep Separatore delle migliaia
grouping Array contenente i gruppi numerici
int_curr_symbol Simbolo internazionale della divisa (i.e. USD)
currency_symbol Simbolo della divisa locale (i.e. $)
mon_decimal_point Carattere per il punto decimale nella moneta
mon_thousands_sep Separatore delle migliaia nella moneta
mon_grouping Array contenente i gruppi monetari
positive_sign Segno per i valori positivi
negative_sign Segno per i valori negativi
int_frac_digits Numero di caratteri frazionali internazionali
frac_digits Numero di caratteri frazionali locali
p_cs_precedes true se il simbolo della divisa precede i valori positivi, false se segue tali valori
p_sep_by_space true se uno spazio separa il simbolo della divisa dai valori positivi false in caso contrario
n_cs_precedes true se il simbolo della divisa precede i valori negativi, false se segue tali valori
n_sep_by_space true se uno spazio separa il simbolo della divisa dai valori negativi, false in caso contrario
p_sign_posn
0 Parentesi attorno alla quantità ed al simbolo della divisa
1 Il segno precede la quantità ed al simbolo della divisa
2 Il segno segue la quantità ed al simbolo della divisa
3 Il segno precede immediatamente il simbolo della divisa
4 Il segno segue immediatamente il simbolo della divisa
n_sign_posn
0 Parentesi attorno alla quantità ed al simbolo della divisa
1 Il segno precede la quantità ed al simbolo della divisa
2 Il segno segue la quantità ed al simbolo della divisa
3 Il segno precede immediatamente il simbolo della divisa
4 Il segno segue immediatamente il simbolo della divisa

I campi di raggruppamento contengono matrici che definiscono il modo con cui i numeri dovrebbero essere raggruppati. Ad esempio, i campi di raggruppamento per il formato en_US, contengono due elementi con i valori 3 e 3. L'indice più alto indica quanto è distinta il gruppo di sinistra. Se un elemento della matrice è uguale a CHAR_MAX, non vi sono più gruppi. Se nella matrice vi è un elemento a 0, occorre utilizzare l'elemento precedente.

Example #1 Esempio di uso di localeconv()

<?php
setlocale
(LC_ALL, "en_US");

$locale_info = localeconv();

echo
"<pre>\n";
echo
"--------------------------------------------\n";
echo
" Informazioni sulla configurazione monetaria locale: \n";
echo
"--------------------------------------------\n\n";

echo
"int_curr_symbol: {$locale_info["int_curr_symbol"]}\n";
echo
"currency_symbol: {$locale_info["currency_symbol"]}\n";
echo
"mon_decimal_point: {$locale_info["mon_decimal_point"]}\n";
echo
"mon_thousands_sep: {$locale_info["mon_thousands_sep"]}\n";
echo
"positive_sign: {$locale_info["positive_sign"]}\n";
echo
"negative_sign: {$locale_info["negative_sign"]}\n";
echo
"int_frac_digits: {$locale_info["int_frac_digits"]}\n";
echo
"frac_digits: {$locale_info["frac_digits"]}\n";
echo
"p_cs_precedes: {$locale_info["p_cs_precedes"]}\n";
echo
"p_sep_by_space: {$locale_info["p_sep_by_space"]}\n";
echo
"n_cs_precedes: {$locale_info["n_cs_precedes"]}\n";
echo
"n_sep_by_space: {$locale_info["n_sep_by_space"]}\n";
echo
"p_sign_posn: {$locale_info["p_sign_posn"]}\n";
echo
"n_sign_posn: {$locale_info["n_sign_posn"]}\n";
echo
"</pre>\n";
?>

E' presente una costante, CHAR_MAX, per gli utilizzi descritti in precedenza.

Vedere anche setlocale().

add a note

User Contributed Notes 1 note

up
1
verdy_p at wanadoo dot fr
23 years ago
The C99 standard modified slightly the definition of the international currency symbol, which is now 4 characters long instead of 3 in previous definitions. The fourth character will most often be an ASCII space, but its effective value is the locale-specific spacing character used for numeric grouping (i.e. the one refered by [sep_by_space] and [grouping])...
To Top