(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
はじめに
"ロケール" とは、言語や文化等の地域固有の内容を API で取得する際に使用する識別子のことです。PHP で使用しているロケールは、 ICU (そして他の多くの Unix 系 OS や Mac、Java など) が採用している CLDR ロケールと同じです。 ロケールは、RFC 4646 形式の言語タグ (アンダースコアではなくハイフンを使用したもの) を使用します。古くから用いられているアンダースコア形式の識別子も使用できます。 特にことわりがない限り、このクラスの関数では両方の形式の識別子を使用可能です。
識別子の例を以下にあげます。
- en-US (英語、米国)
- zh-Hant-TW (中国語、繁体字、台湾 )
- fr-CA, fr-FR (それぞれ、カナダのフランス語とフランスのフランス語)
Locale クラス (そしてそれに対応する手続き型の関数) を使用して、ロケール識別子に対する操作を行います。 たとえばその識別子が妥当な形式かどうかを調べたりします。 CLDR が UAX #35 で使用している (そして ICU も継承している) 拡張は、ICU で普通に用いることができます。
Locale クラスのインスタンスを作成することはできません。 すべての関数/メソッドは静的に使用します。
null や空文字列は "root" ロケールとなります。 この "root" ロケールは、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 ( ) : 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
}
定義済み定数
Locale::DEFAULT_LOCALE
(null)- NumberFormatter のようなロケールの影響を受けるさまざまなクラスのメソッドの locale パラメータとして使用します。 この定数は、デフォルトのロケールをメソッドで使用するようにします。
これらの定数は、さまざまなクラスの getLocale メソッドでロケールを選択するために使用します。
Locale::ACTUAL_LOCALE
(string)- これは、データが実際にやってくる元のロケールです。
Locale::VALID_LOCALE
(string)- これは、ICU がサポートする最も明確なロケールです。
目次
- Locale::acceptFromHttp — 最もあてはまるロケールを HTTP "Accept-Language" ヘッダにもとづいて探す
- Locale::canonicalize — ロケール文字列を正規化する
- Locale::composeLocale — 正しく並べ替えて区切られたロケール ID を返す
- Locale::filterMatches — 言語タグフィルタがロケールにマッチするかどうかを調べる
- Locale::getAllVariants — 入力ロケールの変化系を取得する
- Locale::getDefault — INTL のグローバル 'default_locale' からデフォルトのロケールを取得する
- Locale::getDisplayLanguage — 入力ロケールの言語の表示名を、適切に地域化して返す
- Locale::getDisplayName — 入力ロケールの表示名を、適切に地域化して返す
- Locale::getDisplayRegion — 入力ロケールの地域の表示名を、適切に地域化して返す
- Locale::getDisplayScript — 入力ロケールの文字の表示名を、適切に地域化して返す
- Locale::getDisplayVariant — 入力ロケールの変化形の表示名を、適切に地域化して返す
- Locale::getKeywords — 入力ロケールのキーワードを取得する
- Locale::getPrimaryLanguage — 入力ロケールのプライマリ言語を取得する
- Locale::getRegion — 入力ロケールの地域を取得する
- Locale::getScript — 入力ロケールの文字を取得する
- Locale::lookup — その言語にマッチする言語タグの一覧を検索する
- Locale::parseLocale — ロケール ID のサブタグ要素を連想配列で返す
- Locale::setDefault — デフォルトの実行時ロケールを設定する
/* メソッド */