Locale::lookup
locale_lookup
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Locale::lookup -- locale_lookup — Searches the language tag list for the best match to the language
Description
Object-oriented style
array
$languageTag,string
$locale,bool
$canonicalize = false,?string
$defaultLocale = null): ?string
Procedural style
array
$languageTag,string
$locale,bool
$canonicalize = false,?string
$defaultLocale = null): ?string
Searches the items in languageTag for the best match to
the language range specified in locale according to
RFC 4647's lookup algorithm.
Parameters
-
languageTag -
An array containing a list of language tags to compare to
locale. Maximum 100 items allowed. -
locale -
The locale to use as the language range when matching.
-
canonicalize -
If true, the arguments will be converted to canonical form before matching.
-
defaultLocale -
The locale to use if no match is found.
Return Values
The closest matching language tag or default value.
Returns null when the length of locale exceeds INTL_MAX_LOCALE_LEN.
Changelog
| Version | Description |
|---|---|
| 7.4.0 |
defaultLocale is nullable now.
|
Examples
Example #1 locale_lookup() example
<?php
$arr = array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo locale_lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>
Example #2 OO example
<?php
$arr = array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo Locale::lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>
The above example will output:
de_de_1996

