(PHP 4 >= 4.0.5, PHP 5)
localeconv — Get numeric formatting information
Returns an associative array containing localized numeric and monetary formatting information.
localeconv() returns data based upon the current locale as set by setlocale(). The associative array that is returned contains the following fields:
Array element | Description |
---|---|
decimal_point | Decimal point character |
thousands_sep | Thousands separator |
grouping | Array containing numeric groupings |
int_curr_symbol | International currency symbol (i.e. USD) |
currency_symbol | Local currency symbol (i.e. $) |
mon_decimal_point | Monetary decimal point character |
mon_thousands_sep | Monetary thousands separator |
mon_grouping | Array containing monetary groupings |
positive_sign | Sign for positive values |
negative_sign | Sign for negative values |
int_frac_digits | International fractional digits |
frac_digits | Local fractional digits |
p_cs_precedes | TRUE if currency_symbol precedes a positive value, FALSE if it succeeds one |
p_sep_by_space | TRUE if a space separates currency_symbol from a positive value, FALSE otherwise |
n_cs_precedes | TRUE if currency_symbol precedes a negative value, FALSE if it succeeds one |
n_sep_by_space | TRUE if a space separates currency_symbol from a negative value, FALSE otherwise |
p_sign_posn |
|
n_sign_posn |
|
The p_sign_posn, and n_sign_posn contain a string of formatting options. Each number representing one of the above listed conditions.
The grouping fields contain arrays that define the way numbers should be grouped. For example, the monetary grouping field for the nl_NL locale (in UTF-8 mode with the euro sign), would contain a 2 item array with the values 3 and 3. The higher the index in the array, the farther left the grouping is. If an array element is equal to CHAR_MAX, no further grouping is done. If an array element is equal to 0, the previous element should be used.
Example #1 localeconv() example
<?php
if (false !== setlocale(LC_ALL, 'nl_NL.UTF-8@euro')) {
$locale_info = localeconv();
print_r($locale_info);
}
?>
上例将输出:
Array ( [decimal_point] => . [thousands_sep] => [int_curr_symbol] => EUR [currency_symbol] => € [mon_decimal_point] => , [mon_thousands_sep] => [positive_sign] => [negative_sign] => - [int_frac_digits] => 2 [frac_digits] => 2 [p_cs_precedes] => 1 [p_sep_by_space] => 1 [n_cs_precedes] => 1 [n_sep_by_space] => 1 [p_sign_posn] => 1 [n_sign_posn] => 2 [grouping] => Array ( ) [mon_grouping] => Array ( [0] => 3 [1] => 3 ) )