(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
Locale::composeLocale -- locale_compose — 正しく並べ替えて区切られたロケール ID を返す
オブジェクト指向型
$subtags
)手続き型
$subtags
)正しく並べ替えて区切られたロケール ID を返します。 キーが特定のロケール ID サブタグを表し、 サブタグの値がそのキーに対応する値となります。
subtags
キーと値のペアを含む配列。 キーには特定のロケール ID サブタグを指定し、 そのサブタグの値を関連付けます。
注意:
サブタグ 'variant' と 'private' には最大で 15 の値を指定できますが、 'extlang' には最大で 3 つの値しか指定できません。 variant には 0 から 14 までのサフィックスをつけることができ、 配列のキーは variant0, variant1, ...,variant14 となります。 返されるロケール ID において、このサブタグは variant0、variant1、variant2、……の順に並びます。
'variant'、'private' および 'extlang' で複数の値を指定するには、 そのキー (例 'variant') の値に配列を指定するか、数字つきの複数のキー (例 'variant0'、'variant1' など) を使用します。
対応するロケール識別子を返します。
例1 locale_compose() の例
<?php
$arr = array(
'language'=>'en' ,
'script' =>'Hans' ,
'region' =>'CN',
'variant2'=>'rozaj' ,
'variant1'=>'nedis' ,
'private1'=>'prv1' ,
'private2'=>'prv2'
);
echo locale_compose( $arr );
?>
例2 オブジェクト指向の例
<?php
$arr = array(
'language'=>'en' ,
'script' =>'Hans' ,
'region' =>'CN',
'variant2'=>'rozaj' ,
'variant1'=>'nedis' ,
'private1'=>'prv1' ,
'private2'=>'prv2'
);
echo Locale::composeLocale( $arr );
?>
上の例の出力は以下となります。
Locale: en_Hans_CN_nedis_rozaj_x_prv1_prv2