Locale::composeLocale
Locale::composeLocale
locale_compose
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
Locale::composeLocale -- locale_compose — Returns a correctly ordered and delimited locale ID
Description
Object oriented style
public static string Locale::composeLocale ( array $subtags )
Procedural style
string locale_compose ( array $subtags )
Returns a correctly ordered and delimited locale ID the keys identify the particular locale ID subtags, and the values are the associated subtag values.
Parameters
subtags
an array containing a list of key-value pairs, where the keys identify the particular locale ID subtags, and the values are the associated subtag values.
Note
: The 'variant' and 'private' subtags can take maximum 15 values whereas 'extlang' can take maximum 3 values.e.g. Variants are allowed with the suffix ranging from 0-14. Hence the keys for the input array can be variant0, variant1, ...,variant14. In the returned locale id, the subtag is ordered by suffix resulting in variant0 followed by variant1 followed by variant2 and so on. The 'variant', 'private' and 'extlang' multiple values can be specified both as array under specific key (e.g. 'variant') and as multiple numbered keys (e.g. 'variant0', 'variant1', etc.).
Return Values
The corresponding locale identifier.
Examples
Example #1 locale
_
compose() example
<?php
$arr = array(
'language'=>'en' ,
'script' =>'Hans' ,
'region' =>'CN',
'variant2'=>'rozaj' ,
'variant1'=>'nedis' ,
'private1'=>'prv1' ,
'private2'=>'prv2'
echo locale_compose( $arr
?>
Example #2 OO example
<?php
$arr = array(
'language'=>'en' ,
'script' =>'Hans' ,
'region' =>'CN',
'variant2'=>'rozaj' ,
'variant1'=>'nedis' ,
'private1'=>'prv1' ,
'private2'=>'prv2'
echo Locale::composeLocale( $arr
?>
The above example will output:
Locale: en_Hans_CN_nedis_rozaj_x_prv1_prv2
See Also
- locale_parse() - Returns a key-value array of locale ID subtag elements.
← Locale::canonicalize
Locale::filterMatches →
© 1997–2017 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.