php localeconvで現在のロケールの数値に関連する情報を取得する
phpで、localeconvを使用して、現在のロケールの数値に関連する情報を取得するサンプルコードを記述してます。phpのバージョンは8.0です。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- php 8.0.0
- nginx 1.14.1
localeconv使い方
localeconvを使用すれば、現在のロケールの数値に関連する情報を取得することが可能です。
localeconv();
以下は、現在のロケールの数値に関連する情報を取得するサンプルコードとなります。
<?php
$result = localeconv();
var_dump($result);
実行結果
array(18) {
'decimal_point' =>
string(1) "."
'thousands_sep' =>
string(0) ""
'int_curr_symbol' =>
string(0) ""
'currency_symbol' =>
string(0) ""
'mon_decimal_point' =>
string(0) ""
'mon_thousands_sep' =>
string(0) ""
'positive_sign' =>
string(0) ""
'negative_sign' =>
string(0) ""
'int_frac_digits' =>
int(127)
'frac_digits' =>
int(127)
'p_cs_precedes' =>
int(127)
'p_sep_by_space' =>
int(127)
'n_cs_precedes' =>
int(127)
'n_sep_by_space' =>
int(127)
'p_sign_posn' =>
int(127)
'n_sign_posn' =>
int(127)
'grouping' =>
array(0) {
}
'mon_grouping' =>
array(0) {
}
}
各戻り値は以下となります。
decimal_point
小数点を表す文字
thousands_sep
千ごとの桁の区切り文字
int_curr_symbol
国際通貨記号
currency_symbol
ローカルの通貨記号
mon_decimal_point
通貨表記における、小数点を表す文字
mon_thousands_sep
通貨表記における、千ごとの桁の区切り文字
positive_sign
正数を表す記号
negative_sign
負数を表す記号
int_frac_digits
国際的な分割の桁
frac_digits
ローカルな分割の桁
p_cs_precedes
currency_symbolが、正の値の前に来る時はTRUE
currency_symbolが、正の値の後に来る時はFALSE
p_sep_by_space
currency_symbolと正の値を、1文字の空白で区切る時はTRUE
currency_symbolと正の値を、1文字の空白で区切らない時はFALSE
n_cs_precedes
currency_symbolが、負の値の前に来る時はTRUE
currency_symbolが、負の値の後に来る時はFALSE
n_sep_by_space
currency_symbolと負の値を、1文字の空白で区切る時はTRUE
currency_symbolと負の値を、1文字の空白で区切らない時はFALSE
p_sign_posn
プラス記号の場所
0: 数値や通貨記号を括る括弧
1: 符号文字列は数値や通貨記号の前
2: 符号文字列は数値や通貨記号の後
3: 符号文字列は通貨記号の直前
4: 符号文字列は通貨記号の直後
n_sign_posn
マイナス記号の位置
0: 数値や通貨記号を括る括弧
1: 符号文字列は数値や通貨記号の前
2: 符号文字列は数値や通貨記号の後
3: 符号文字列は通貨記号の直前
4: 符号文字列は通貨記号の直後
grouping
グループ化
mon_grouping
通貨表記における、グループ化
ロケールをアメリカに設定すると結果は、以下の通りとなります。
<?php
setlocale( LC_ALL, "en_US.UTF8" );
$result = localeconv();
var_dump($result);
実行結果
array(18) {
'decimal_point' =>
string(1) "."
'thousands_sep' =>
string(0) ""
'int_curr_symbol' =>
string(0) ""
'currency_symbol' =>
string(0) ""
'mon_decimal_point' =>
string(0) ""
'mon_thousands_sep' =>
string(0) ""
'positive_sign' =>
string(0) ""
'negative_sign' =>
string(0) ""
'int_frac_digits' =>
int(127)
'frac_digits' =>
int(127)
'p_cs_precedes' =>
int(127)
'p_sep_by_space' =>
int(127)
'n_cs_precedes' =>
int(127)
'n_sep_by_space' =>
int(127)
'p_sign_posn' =>
int(127)
'n_sign_posn' =>
int(127)
'grouping' =>
array(0) {
}
'mon_grouping' =>
array(0) {
}
}
(base) [testuser@localhost html]$ php sample.php
/usr/share/nginx/html/sample.php:7:
array(18) {
'decimal_point' =>
string(1) "."
'thousands_sep' =>
string(1) ","
'int_curr_symbol' =>
string(4) "USD "
'currency_symbol' =>
string(1) "$"
'mon_decimal_point' =>
string(1) "."
'mon_thousands_sep' =>
string(1) ","
'positive_sign' =>
string(0) ""
'negative_sign' =>
string(1) "-"
'int_frac_digits' =>
int(2)
'frac_digits' =>
int(2)
'p_cs_precedes' =>
int(1)
'p_sep_by_space' =>
int(0)
'n_cs_precedes' =>
int(1)
'n_sep_by_space' =>
int(0)
'p_sign_posn' =>
int(1)
'n_sign_posn' =>
int(1)
'grouping' =>
array(2) {
[0] =>
int(3)
[1] =>
int(3)
}
'mon_grouping' =>
array(2) {
[0] =>
int(3)
[1] =>
int(3)
}
}
-
前の記事
ポケットwifi pingがあたらない 2021.10.14
-
次の記事
ubuntu apache2のバージョンを確認する 2021.10.14
コメントを書く