this method performs Level 1 and Level 2 canonicalization according to ICU standards. See http://userguide.icu-project.org/locale#TOC-Canonicalization. echo \Locale::canonicalize ( 'en-US.utf8' ); // "en_U"echo \Locale::canonicalize ( 'FR-fr@EURO' ); // "fr_FR@currency=EUR"echo \Locale::canonicalize ( '' ); // "en_US_POSIX"