(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
Locale::filterMatches -- locale_filter_matches — Comprobar si unfiltro de etiquetas de lenguaje coincide con una configuración regional
Estilo orientado a objetos
$langtag
   , string $locale
   [, bool $canonicalize = false
  ] )Estilo por procedimientos
$langtag
   , string $locale
   [, bool $canonicalize = false
  ] )Comprobar si el filtro $langtag coincide con $locale de acuerdo al algoritmo de filtración básica de RFC 4647.
langtagLa etiqueta de lenguaje a comprobar
localeEl rango de lenguajes con el que se realiza la comprobación
canonicalizeSi es verdadero (true), los argumentos serán convertidos a su forma conónica antes de la comparación.
   TRUE si $locale coincide con $langtag FALSE si no.
  
Ejemplo #1 Ejemplo de locale_filter_matches()
<?php
echo (locale_filter_matches('de-DEVA','de-DE', false)) ? "Coincide" : "No coincide"; 
echo '; ';
echo (locale_filter_matches('de-DE_1996','de-DE', false)) ? "Coincide" : "No coincide"; 
?>
Ejemplo #2 Ejemplo orientado a objetos
<?php
echo (Locale::filterMatches('de-DEVA','de-DE', false)) ? "Coincide" : "No coincide"; 
echo '; ';
echo (Locale::filterMatches('de-DE-1996','de-DE', false)) ? "Coincide" : "No coincide"; 
?>
El resultado del ejemplo sería:
No coincide; Coincide