Locale sınıfı

(No version information available, might only be in Git)

Giriş

Bir yerel (Locale), API'den dili, kültürü ve bölgeye özge özellikleri öğrenmek için kullanılan bir betimleyicidir. PHP yerelleri ICU (ve birçok Unix benzeri sistem üreticisi, Mac, Java, vs.) tarafından kullanılan CLDR yerelleriyle aynı yöntemle düzenlenip betimlenirler. Yereller, (alt çizgi yerine tire kullanılan) RFC 4646 dil yaftalarına ek olarak daha geleneksel olan alt çizgi kullanan betimleyiciler kullanılarak da betimlenebilir. Aksi belirtilmedikçe bu sınıftaki işlevler her iki gösterim biçemine de duyarlıdır.

Yerel betimleyicileri için örnekler:

  • tr-TR (Türkçe, Türkiye)
  • zh-Hant-TW (Çince, Geleneksel Yazı, Tayvan)
  • fr-CA, fr-FR (Kanada Fransızcası ve Fransa Fransızcası)

Locale sınıfı (ve ilgili yordamsal işlevler) yerel betimleyicileri ile etkileşim, bir betimleyicinin iyi biçimliliğini, geçerliliğini doğrulama, vs. için kullanılırlar. UAX #35'teki (ve ICU tarafından miras alınan) CLDR tarafından kullanılan eklentiler ICU'da da normal olarak geçerlidir ve kullanılırlar.

Locale sınıfı bir nesne olarak örneklenemez. Sağlanan tüm işlev/yöntemler duruktur.

Boş veya null dizge "kök" yerel olarak ele alınır ve CLDR'de "en_US_POSIX" yereline denktir. Dil yaftaları (ve dolayısıyla yerel betimleyicileri) harf büyüklüğüne duyarsızdır. Belirtimle harf eşleştirmesi yapacak bir meşrulaştırma işlevi mevcuttur.

Sınıf Sözdizimi

class Locale {
/* Sabitler */
public const int ACTUAL_LOCALE;
public const int VALID_LOCALE;
public const null DEFAULT_LOCALE = null;
public const string LANG_TAG;
public const string EXTLANG_TAG;
public const string SCRIPT_TAG;
public const string REGION_TAG;
public const string VARIANT_TAG;
public const string PRIVATE_TAG;
/* Yöntemler */
public static acceptFromHttp(string $başlık): string|false
public static canonicalize(string $locale): ?string
public static composeLocale(array $alt_yaftalar): string|false
public static filterMatches(string $dil_yaftası, string $yerel, bool $meşru = false): ?bool
public static getAllVariants(string $yerel): ?array
public static getDefault(): string
public static getDisplayLanguage(string $hedef_yerel, ?string $adlandırma_yereli = null): string|false
public static getDisplayName(string $hedef_yerel, ?string $adlandırma_yereli = null): string|false
public static getDisplayRegion(string $ülke_yereli, ?string $adlandırma_yereli = null): string|false
public static getDisplayScript(string $yazı_yereli, ?string $adlandırma_yereli = null): string|false
public static getDisplayVariant(string $lehçe_yereli, ?string $adlandırma_yereli = null): string|false
public static getPrimaryLanguage(string $yerel): ?string
public static getRegion(string $yerel): ?string
publicstatic getScript(string $yerel): ?string
public static lookup(
    array $dil_yaftası,
    string $yerel,
    bool $meşru = false,
    ?string $öntanımlı_yerel = null
): ?string
public static parseLocale(string $yerel): ?array
public static setDefault(string $yerel): bool
}

Öntanımlı Sabitler

Locale::DEFAULT_LOCALE
NumberFormatter gibi yereli etkileyen çeşitli sınıfların çeşitli yöntemlerinde yerel bağımsız değişkeni olarak kullanılır. Bu sabit, bu yöntemlerin öntanımlı yereli kullanmasını sağlar.

Bu sabitler çeşitli sınıfların getLocale yöntemleri için yerel seçimlerini belirler.

Locale::ACTUAL_LOCALE
Asıl verinin geldiği yereldir.
Locale::VALID_LOCALE
ICU tarafından desteklenen en geçerli yereldir.

Bu sabitler, yerellerin nasıl çözümlenip oluşturulduğunu tanımlar. Bunların, locale_compose() işlevinin dizi bağımsız değişkeninde anahtar olarak kullanılması gerekir ve locale_parse() işlevinden dönen ilişkisel dizinin anahtarlarıdırlar.

Locale::LANG_TAG
Dil alt yaftası
Locale::EXTLANG_TAG
Ek dil alt yaftası
Locale::SCRIPT_TAG
Yazı alt yaftası
Locale::REGION_TAG
Bölge yaftası
Locale::VARIANT_TAG
Lehçe alt yaftası
Locale::GRANDFATHERED_LANG_TAG
Ebeveyn dil alt yaftası
Locale::PRIVATE_TAG
Özel alt yafta

İçindekiler

add a note add a note

User Contributed Notes 1 note

up
-2
Ryan
4 years ago
Most of this classes are not documented clearly.
You can use https://github.com/salarmehr/cosmopolitan that is based on Intl extension and way easier to use.
To Top