diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-03-14 05:42:27 +0000 |
---|---|---|
committer | <> | 2013-04-03 16:25:08 +0000 |
commit | c4dd7a1a684490673e25aaf4fabec5df138854c4 (patch) | |
tree | 4d57c44caae4480efff02b90b9be86f44bf25409 /ext/intl/doc/locale_api.php | |
download | php2-master.tar.gz |
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/intl/doc/locale_api.php')
-rw-r--r-- | ext/intl/doc/locale_api.php | 434 |
1 files changed, 434 insertions, 0 deletions
diff --git a/ext/intl/doc/locale_api.php b/ext/intl/doc/locale_api.php new file mode 100644 index 0000000..c6c41ed --- /dev/null +++ b/ext/intl/doc/locale_api.php @@ -0,0 +1,434 @@ +<?php + +/** + * A "Locale" is an identifier used to get language, culture, or regionally-specific + * behavior from an API. PHP locales are organized and identified the same + * way that the CLDR locales used by ICU (and many vendors of Unix-like operating + * systems, the Mac, Java, and so forth) use. Locales are identified using + * RFC 4646 language tags (which use hyphen, not underscore) in addition to the + * more traditional underscore-using identifiers. Unless otherwise noted + * the functions in this class are tolerant of both formats. + * + * Examples of identifiers include: + * + * * en-US (English, United States) + * * zh-Hant-TW (Chinese, Traditional Script, Taiwan) + * * fr-CA, fr-FR (French for Canada and France respectively) + * + * The Locale class (and related procedural functions) are used to interact + * with locale identifiers--to verify that an ID is well-formed, valid, + * etc. The extensions used by CLDR in UAX #35 (and inherited by ICU) are + * valid and used wherever they would be in ICU normally. + * + * Locales cannot be instantiated as objects. All of the functions/methods + * provided are static. + * + * * The null or empty string obtains the "root" locale. + * The "root" locale is equivalent to "en_US_POSIX" in CLDR. + * * Language tags (and thus locale identifiers) are case insensitive. There + * exists a canonicalization function to make case match the specification. + * + * @see http://www.icu-project.org/apiref/icu4c/uloc_8h.html + * @see http://www.unicode.org/reports/tr35/ + * + */ +class Locale { + +############################################################################# +# Common constants. +############################################################################# + + /** + * The following static members are used with the getLocale methods of + * the various locale affected classes, such as numfmt. + */ + const DEFAULT_LOCALE = null; + + /** + * identifiers for the actual locale, valid locale + * WARNING: + * The values described here are NOT the actual values in PHP code. + * They are references to the ICU C definitions, so the line + * const ACTUAL_LOCALE = 'ULOC_ACTUAL_LOCALE'; + * actually means that Locale::ACTUAL_LOCALE is the same as + * ULOC_ACTUAL_LOCALE constant in the ICU library. + */ + const ACTUAL_LOCALE = 'ULOC_ACTUAL_LOCALE'; + const VALID_LOCALE = 'ULOC_VALID_LOCALE'; + + /** + * Valid locale tag and subtag values + */ + const LANG_TAG = "language"; + const EXTLANG_TAG = "extlang"; + const SCRIPT_TAG = "script"; + const REGION_TAG = "region"; + const VARIANT_TAG = "variant"; + const GRANDFATHERED_LANG_TAG = "grandfathered"; + const PRIVATE_TAG = "private"; + + +############################################################################# +# Object-oriented API +############################################################################# + + /** + * Gets the default locale value from the INTL global 'default_locale' + * At the PHP initilaization (MINIT) this value is set to + * 'intl.default_locale' value from php.ini if that value exists + * or from ICU's function uloc_getDefault() + * Then onwards picks up changes from setDefault() calls also + * + * @return string the current runtime locale + */ + public static function getDefault() {} + + /** + * sets the default runtime locale to $locale + * This changes the value of INTL global 'default_locale' + * + * @param string $locale is a BCP 47 compliant language tag containing the + * locale identifier. UAX #35 extensions are accepted. + * @return boolean 'true' if okay, 'false' if an error + */ + public static function setDefault($locale) {} + + + /** + * Gets the primary language for the input locale + * + * @param string $locale the locale to extract the primary language code from + * @return string the language code associated with the language + * or null in case of error. + */ + public static function getPrimaryLanguage($locale) {} + + + /** + * Gets the script for the input locale + * + * @param string $locale the locale to extract the script code from + * @return string the script subtag for the locale or null if not present + */ + public static function getScript($locale) {} + + + /** + * Gets the region for the input locale + * + * @param string $locale the locale to extract the region code from + * @return string the region subtag for the locale or null if not present + */ + public static function getRegion($locale) {} + + + /** + * Gets the variants for the input locale + * + * @param string $locale the locale to extract the variants from + * @return array the array containing the list of all variants + * subtag for the locale or null if not present + */ + public static function getAllVariants($locale) {} + + + /** + * Gets the keywords for the input locale + * + * @param string $locale the locale to extract the keywords from + * @return array associative array containing the keyword-value pairs for this locale + */ + public static function getKeywords($locale) {} + + + /** + * Returns an appropriately localized display name for the input locale + * + * @param string $locale the locale to return a displayname for + * @param [string] $in_locale optional format locale + * If is 'null' then the default locale is used. + * @return string display name of the locale in the format + * appropriate for $in_locale. + */ + public static function getDisplayName($locale, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for language of the input locale + * + * @param string $locale the locale to return a display language for + * @param [string] $in_locale optional format locale to use to display the language name + * If is 'null' then the default locale is used. + * @return string display name of the language for the $locale in the format + * appropriate for $in_locale. + */ + public static function getDisplayLanguage($lang, $in_locale = null) {} + + /** + * Returns an appropriately localized display name for script of the input locale + * + * @param string $locale the locale to return a display script for + * @param [string] $in_locale optional format locale to use to display the script name + * If is 'null' then the default locale is used. + * @return string display name of the script for the $locale in the format + * appropriate for $in_locale. + */ + public static function getDisplayScript($script, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for region of the input locale + * + * @param string $locale the locale to return a display region for + * @param [string] $in_locale optional format locale to use to display the region name + * If is 'null' then the default locale is used. + * @return string display name of the region for the $locale in the format + * appropriate for $in_locale. + */ + public static function getDisplayRegion($region, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for variants of the input locale + * + * @param string $locale the locale to return a display variant for + * @param [string] $in_locale optional format locale to use to display the variant name + * If is 'null' then the default locale is used. + * @return string display name of the variant for the $locale in the format + * appropriate for $in_locale. + */ + public static function getDisplayVariant($variant, $in_locale = null) {} + + + /** + * Checks if a $langtag filter matches with $locale according to + * RFC 4647's basic filtering algorithm + * + * @param string $langtag the language tag to check + * @param string $locale the language range to check against + * @param bool $canonicalize Canonicalize parameters? + * @return boolean 'true' if $locale matches $langtag 'false' otherwise + */ + public static function filterMatches($langtag, $locale, $canonicalize) {} + + /** + * Searchs the items in $langtag for the best match to the language + * range specified in $locale according to RFC 4647's lookup algorithm. + * + * @param array $langtag an array containing a list of language tags to compare + * to $locale + * @param string $locale the locale to use as the language range when matching + * @param string $default the locale to use if no match is found + * @return string closest matching language tag, $default, + * or empty string + */ + public static function lookup(array $langtag, $locale, $default = null) {} + + + /** + * Returns a correctly ordered and delimited locale ID + * + * @param array $subtags an array containing a list of key-value pairs, where + * the keys identify the particular locale ID subtags, + * and the values are the associated subtag values. + * + * @return string the corresponding locale identifier. + */ + public static function composeLocale(array $subtags) {} + + + /** + * Returns a key-value array of locale ID subtag elements. + * + * @param string $locale the locale to extract the subtag array from + * + * @return array $subtags an array containing a list of key-value pairs, where + * the keys identify the particular locale ID subtags, + * and the values are the associated subtag values. + */ + public static function parseLocale($locale) {} + +} + +############################################################################# +# Procedural API +############################################################################# + + + /** + * Gets the default locale value from the INTL global 'default_locale' + * At the PHP initilaization (MINIT) this value is set to + * 'intl.default_locale' value from php.ini if that value exists + * or from ICU's function uloc_getDefault() + * Then onwards picks up changes from setDefault() calls also + * + * @return string the current runtime locale + */ + function locale_get_default() {} + + /** + * sets the default runtime locale to $locale + * This changes the value of INTL global 'default_locale' + * + * @param string $locale is a BCP 47 compliant language tag containing the + * locale identifier. UAX #35 extensions are accepted. + * @return boolean 'true' if okay, 'false' if an error + */ + function locale_set_default($locale) {} + + + /** + * Gets the primary language for the input locale + * + * @param string $locale the locale to extract the primary language code from + * @return string the language code associated with the language + * or null in case of error. + */ + function locale_get_primary_language($locale) {} + + + /** + * Gets the script for the input locale + * + * @param string $locale the locale to extract the script code from + * @return string the script subtag for the locale or null if not present + */ + function locale_get_script($locale) {} + + + /** + * Gets the region for the input locale + * + * @param string $locale the locale to extract the region code from + * @return string the region subtag for the locale or null if not present + */ + function locale_get_region($locale) {} + + + /** + * Gets the variants for the input locale + * + * @param string $locale the locale to extract the variants from + * @return array the array containing the list of all variants + * subtag for the locale or null if not present + */ + function locale_get_all_variants($locale) {} + + + /** + * Gets the keywords for the input locale + * + * @param string $locale the locale to extract the keywords from + * @return array associative array containing the keyword-value pairs for this locale + */ + function locale_get_keywords($locale) {} + + + /** + * Returns an appropriately localized display name for the input locale + * + * @param string $locale the locale to return a displayname for + * @param [string] $in_locale optional format locale + * If is 'null' then the default locale is used. + * @return string display name of the locale in the format + * appropriate for $in_locale. + */ + function locale_get_display_name($locale, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for language of the input locale + * + * @param string $locale the locale to return a display language for + * @param [string] $in_locale optional format locale to use to display the language name + * If is 'null' then the default locale is used. + * @return string display name of the language for the $locale in the format + * appropriate for $in_locale. + */ + function locale_get_display_language($lang, $in_locale = null) {} + + /** + * Returns an appropriately localized display name for script of the input locale + * + * @param string $locale the locale to return a display script for + * @param [string] $in_locale optional format locale to use to display the script name + * If is 'null' then the default locale is used. + * @return string display name of the script for the $locale in the format + * appropriate for $in_locale. + */ + function locale_get_display_script($script, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for region of the input locale + * + * @param string $locale the locale to return a display region for + * @param [string] $in_locale optional format locale to use to display the region name + * If is 'null' then the default locale is used. + * @return string display name of the region for the $locale in the format + * appropriate for $in_locale. + */ + function locale_get_display_region($region, $in_locale = null) {} + + + /** + * Returns an appropriately localized display name for variants of the input locale + * + * @param string $locale the locale to return a display variant for + * @param [string] $in_locale optional format locale to use to display the variant name + * If is 'null' then the default locale is used. + * @return string display name of the variant for the $locale in the format + * appropriate for $in_locale. + */ + function locale_get_display_variant($variant, $in_locale = null) {} + + + /** + * Checks if a $langtag filter matches with $locale according to + * RFC 4647's basic filtering algorithm + * + * @param string $langtag the language tag to check + * @param string $locale the language range to check against + * @param bool $canonicalize Canonicalize parameters? + * @return boolean 'true' if $locale matches $langtag 'false' otherwise + */ + function locale_filter_matches($langtag, $locale, $canonicalize) {} + + /** + * Searchs the items in $langtag for the best match to the language + * range specified in $locale according to RFC 4647's lookup algorithm. + * + * @param array $langtag an array containing a list of language tags to compare + * to $locale + * @param string $locale the locale to use as the language range when matching + * @param string $default the locale to use if no match is found + * @return string closest matching language tag, $default, + * or empty string + */ + function locale_lookup(array $langtag, $locale, $default = null) {} + + + /** + * Returns a correctly ordered and delimited locale ID + * + * @param array $subtags an array containing a list of key-value pairs, where + * the keys identify the particular locale ID subtags, + * and the values are the associated subtag values. + * + * @return string the corresponding locale identifier. + */ + function locale_compose_locale(array $subtags) {} + + + /** + * Returns a key-value array of locale ID subtag elements. + * + * @param string $locale the locale to extract the subtag array from + * + * @return array $subtags an array containing a list of key-value pairs, where + * the keys identify the particular locale ID subtags, + * and the values are the associated subtag values. + */ + function locale_parse_locale($locale) {} + +?> |