(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
“Locale”是一个标识符,用于从API获取语言、区域性或特定于区域的行为。PHP语言环境的组织和标识方式与ICU(以及许多Unix操作系统、Mac、Java等供应商)使用的CLDR语言环境相同。除了使用标识符的更传统的下划线之外,还使用RFC 4646语言标记(使用连字符而不是下划线)来标识区域设置。除非另有说明,否则此类中的函数可以同时容忍这两种格式。
标识符的示例包括:
- en-US(英语、美国)
- zh-Hant-TW(中文,繁体,台湾)
- fr-CA, fr-FR(加拿大和法国分别为法语)
语言环境类(和相关的过程函数)用于与语言环境标识符交互——以验证ID的格式是否正确、有效等。UAX#35中CLDR使用的扩展(并由ICU继承)是有效的,并且通常在ICU中的任何位置使用。
区域设置不能实例化为对象。提供的所有函数/方法都是静态的。
空字符串或空字符串获取“根”区域设置。“根”区域设置相当于CLDR中的“en_US_POSIX”。语言标记(以及区域设置标识符)不区分大小写。存在规范化功能以使实例与规范相匹配。
Locale { /* 方法 */ public static acceptFromHttp ( string $header ) : string public static canonicalize ( string $locale ) : string public static composeLocale ( array $subtags ) : string public static filterMatches ( string $langtag , string $locale [, bool $canonicalize = FALSE ] ) : bool public static getAllVariants ( string $locale ) : array public static getDefault ( void ) : string public static getDisplayLanguage ( string $locale [, string $in_locale ] ) : string public static getDisplayName ( string $locale [, string $in_locale ] ) : string public static getDisplayRegion ( string $locale [, string $in_locale ] ) : string public static getDisplayScript ( string $locale [, string $in_locale ] ) : string public static getDisplayVariant ( string $locale [, string $in_locale ] ) : string public static getKeywords ( string $locale ) : array public static getPrimaryLanguage ( string $locale ) : string public static getRegion ( string $locale ) : string public static getScript ( string $locale ) : string public static lookup ( array $langtag , string $locale [, bool $canonicalize = FALSE [, string $default ]] ) : string public static parseLocale ( string $locale ) : array public static setDefault ( string $locale ) : bool }