Locale::lookup

locale_lookup

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

Locale::lookup -- locale_lookupその言語にマッチする言語タグの一覧を検索する

説明

オブジェクト指向型

publicstaticLocale::lookup(
    array$languageTag,
    string$locale,
    bool$canonicalize = false,
    ?string$defaultLocale = null
): ?string

手続き型

locale_lookup(
    array$languageTag,
    string$locale,
    bool$canonicalize = false,
    ?string$defaultLocale = null
): ?string

languageTag の中から、 locale で指定した言語の範囲に最もマッチするものを RFC 4647 の検索アルゴリズムで調べます。

パラメータ

languageTag

locale と比較したい言語タグの一覧を含む配列。 最大で 100 件まで指定できます。

locale

調べる対象となる言語の範囲として使用するロケール。

canonicalize

true の場合は、引数を正式な形式に変換してからマッチを行います。

defaultLocale

マッチしなかったときに使用するロケール。

戻り値

最も近い言語タグ、あるいはデフォルトの値を返します。

locale の長さが INTL_MAX_LOCALE_LEN を超えた場合、null を返します。

変更履歴

バージョン説明
7.4.0defaultLocale は、nullable になりました。

例1 locale_lookup() の例

<?php
$arr
= array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo
locale_lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>

例2 オブジェクト指向の例

<?php
$arr
= array(
'de-DEVA',
'de-DE-1996',
'de',
'de-De'
);
echo
Locale::lookup($arr, 'de-DE-1996-x-prv1-prv2', true, 'en_US');
?>

上の例の出力は以下となります。

de_de_1996

参考

To Top