(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Locale::filterMatches -- locale_filter_matches — Checks if a language tag filter matches with locale
面向对象风格
$languageTag
, string $locale
, bool $canonicalize
= false
): ?bool过程化风格
$languageTag
, string $locale
, bool $canonicalize
= false
): ?bool
Checks if a languageTag
filter matches with locale
according to RFC 4647's
basic filtering algorithm
languageTag
The language tag to check
locale
The language range to check against
canonicalize
If true, the arguments will be converted to canonical form before matching.
true
if locale
matches languageTag
false
otherwise.
当 locale
的长度超过 INTL_MAX_LOCALE_LEN
时返回 null
。
示例 #1 locale_filter_matches() example
<?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 OO example
<?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