(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Locale::filterMatches -- locale_filter_matches — 言語タグフィルタがロケールにマッチするかどうかを調べる
オブジェクト指向型
$languageTag, string $locale, bool $canonicalize = false): ?bool手続き型
languageTag フィルタが
locale でマッチするかどうかを
RFC 4647 の基本フィルタリングアルゴリズムで調べます。
languageTag調べたい言語タグ。
locale調べる対象となる言語の範囲。
canonicalizetrue の場合は、引数を正式な形式に変換してからマッチを行います。
locale が
languageTag にマッチする場合に true、
それ以外の場合に false を返します。
locale の長さが INTL_MAX_LOCALE_LEN を超えた場合、null を返します。
例1 locale_filter_matches() の例
<?php
echo (locale_filter_matches('de-DEVA','de-DE', false)) ? "Matches" : "Does not match";
echo '; ';
echo (locale_filter_matches('de-DE_1996','de-DE', false)) ? "Matches" : "Does not match";
?>例2 オブジェクト指向の例
<?php
echo (Locale::filterMatches('de-DEVA','de-DE', false)) ? "Matches" : "Does not match";
echo '; ';
echo (Locale::filterMatches('de-DE-1996','de-DE', false)) ? "Matches" : "Does not match";
?>上の例の出力は以下となります。
Does not match; Matches